Zend 文本元素中的占位符文本

     2023-03-05     95

关键词:

【中文标题】Zend 文本元素中的占位符文本【英文标题】:placeholder text in zend text element 【发布时间】:2011-09-28 05:35:46 【问题描述】:

我正在开发一个 Zend 表单应用程序,其中我的表单包含带水印的文本框。

我们可以通过以下代码在 HTML 中实现这一点:

<input type="text" placeholder="Search" name="q" />

我的问题是如何使用 Zend 表单在我的输入框中添加占位符属性?

【问题讨论】:

【参考方案1】:

我认为你可以在定义元素时像这样在你的元素上调用 settAttrib()

    $element->setAttrib ( 'placeholder', 'search' );

【讨论】:

【参考方案2】:

在 Zend_Form_Element 对象上,您可以指定属性:

$element->setAttrib('placeholder', 'Search');

【讨论】:

【参考方案3】:

已经提到要使用:

$element->setAttrib('placeholder', 'Search');

扩展 Zend_Form 时也可以这样使用

$element = $this->createElement('text', 'q', array(
           'placeholder' => 'Search',
           'label'       => 'Search'
));

或者在视图内部使用 Zend_View_Helper_FormText

echo $this->formText('q',null, array('placeholder' => 'Search'));

【讨论】:

对于像我这样的其他人:在 Zend Expressive 3 中,setAttrib() 被重命名为 setAttribute()【参考方案4】:

这是 ZF2 的更新。 您必须在 Zend\Form\Form 中使用它:

$this->add(
    [
        'name'    => 'q',
        'type'    => 'Text',
        'options' => [
            'label' => 'Search',
        ],
        'attributes' => [
            'placeholder' => 'Search',
        ],
    ]
);

setAttrib 不存在,但setAttribute 存在:

$element->setAttribute('placeholder', 'Search');

但是在FormTextview-helper,你不能再添加选项了,所以你必须这样做:

$element = $form->get('q');
$saved_placeholder = $element->getAttribute('placeholder'); // works even if not defined
$element->setAttribute('placeholder', 'Search');
echo $this->formText($element);
$element->setAttribute('placeholder', $saved_placeholder);

我知道,这是一个丑陋的黑客!

【讨论】:

感谢分享@stopi【参考方案5】:

我使用 jQuery 的解决方案

var elements = ['email', 'password', 'password_confirm'];
$j(elements).each(function(i, elem)
    $j('#' + elem).attr('placeholder', $j('#' + elem + '-label label').text());
    $j('#' + elem + '-label').hide();
    if ($j('#' + elem).hasClass('required-entry')) $j('#' + elem).attr('placeholder', $j('#' + elem).attr('placeholder') + ' *');
);

【讨论】:

谷歌翻译,输入类型='文本'中的占位符文本

】谷歌翻译,输入类型=\\\'文本\\\'中的占位符文本【英文标题】:Googletranslate,placeholdertextininputtype=\'text\'谷歌翻译,输入类型=\'文本\'中的占位符文本【发布时间】:2013-12-3122:23:44【问题描述】:在inputtype="text"中翻译占... 查看详情

比较文本字段中的占位符文本[关闭]

】比较文本字段中的占位符文本[关闭]【英文标题】:ComparePlaceholderTextintextfield[closed]【发布时间】:2013-11-2806:54:35【问题描述】:我在情节提要中设置了文本字段(homeTeam)的占位符文本(例如18岁以下)。现在我想检查如下情... 查看详情

TextField 中的占位符文本颜色

】TextField中的占位符文本颜色【英文标题】:PlaceholdertextcolorinTextField【发布时间】:2019-09-2112:57:14【问题描述】:是否可以更改SwiftUI.TextField中的占位符文本颜色?【问题讨论】:嘿,我添加了一个CustomTextField以使占位符易于使... 查看详情

用户文本框中的占位符/示例文本

】用户文本框中的占位符/示例文本【英文标题】:Placeholder/Exampletextintextboxforuser【发布时间】:2013-06-0718:09:02【问题描述】:让示例文本显示在asp.net文本框中的步骤是什么。例如,ID="textboxDate"的文本框内部有[mm/dd/yyyy]... 查看详情

如何删除 JavaScript 中的占位符文本? [复制]

】如何删除JavaScript中的占位符文本?[复制]【英文标题】:HowtoremoveplaceholdertextinJavaScript?[duplicate]【发布时间】:2021-03-3105:34:36【问题描述】:我编写了一些代码来删除输入占位符文本,它按预期工作。我遇到的问题是如何在占... 查看详情

如何替换文本文件中的 $ 占位符?

】如何替换文本文件中的$占位符?【英文标题】:Howtoreplace$placeholdersinatextfile?如何替换文本文件中的$占位符?【发布时间】:2010-09-2918:19:21【问题描述】:我想将“模板”文件的输出通过管道传输到MySQL,该文件中散布着像$dbN... 查看详情

在 Swift 中的 UITextView 中添加占位符文本?

】在Swift中的UITextView中添加占位符文本?【英文标题】:AddplaceholdertextinsideUITextViewinSwift?【发布时间】:2015-02-2311:26:06【问题描述】:如何在UITextView中添加一个占位符,类似于在Swift中为UITextField设置的占位符?【问题讨论】:... 查看详情

Android布局中的占位符文本(仅限设计过程)?

】Android布局中的占位符文本(仅限设计过程)?【英文标题】:Placeholdertext(designprocessonly)inAndroidlayout?【发布时间】:2013-11-2904:24:12【问题描述】:是否可以在AndroidStudio中创建仅在布局设计过程中可见的占位符文本?例如,假... 查看详情

Material UI 中的多行占位符文本

】MaterialUI中的多行占位符文本【英文标题】:Multi-LinePlaceholderTextinMaterialUI【发布时间】:2019-02-1504:08:24【问题描述】:我正在为我正在开发的React应用程序使用MaterialUI。我正在使用TextField组件,我需要一个用于文本区域的多行... 查看详情

删除类型=日期的 html5 输入元素中存在的默认文本/占位符

】删除类型=日期的html5输入元素中存在的默认文本/占位符【英文标题】:Removedefaulttext/placeholderpresentinhtml5inputelementoftype=date【发布时间】:2015-04-2512:21:17【问题描述】:我正在使用类型为日期的html输入元素,<inputtype="date">... 查看详情

如何使用脚本更改 Unity UI 中的占位符文本?

】如何使用脚本更改UnityUI中的占位符文本?【英文标题】:HowtochangeplaceholdertextinUnityUIusingscript?【发布时间】:2015-04-1617:36:10【问题描述】:对于我的项目,默认值是根据外部输出计算的,可以使用新UnityUI中的输入字段更改这... 查看详情

InputText 组件中的默认文本(占位符)

】InputText组件中的默认文本(占位符)【英文标题】:Defaulttext(placeholder)inInputTextcomponent【发布时间】:2013-08-1610:15:03【问题描述】:我想在JSF/PrimefacesinputText组件中显示默认的信息性文本。当用户单击文本字段时,该文本应该... 查看详情

将占位符文本添加到文本字段时,iOS 7 中的应用程序崩溃

】将占位符文本添加到文本字段时,iOS7中的应用程序崩溃【英文标题】:ApplicationcrashesiniOS7whenplaceholdertextisaddedtotextfield【发布时间】:2015-04-2812:35:16【问题描述】:当我向文本字段添加占位符时,我的应用程序在ios7中崩溃,在... 查看详情

Textarea 占位符文本

】Textarea占位符文本【英文标题】:Textareaplaceholdertext【发布时间】:2014-09-1519:05:43【问题描述】:努力理解为什么我的文本区域中的占位符没有显示输入。<textareavalue="Beginyourmessage..."onfocus="ClearPlaceHolder(this)"onblur="SetPlaceHolder(t... 查看详情

使用 jQuery 更改占位符文本

】使用jQuery更改占位符文本【英文标题】:ChangePlaceholderTextusingjQuery【发布时间】:2012-03-0305:15:39【问题描述】:我正在使用jQuery占位符插件(https://github.com/danielstocks/jQuery-Placeholder)。我需要通过下拉菜单中的更改来更改占位符文... 查看详情

在占位符文本之前使用图标搜索输入 - Material Design

】在占位符文本之前使用图标搜索输入-MaterialDesign【英文标题】:Searchinputwithiconbeforeplaceholdertext-MaterialDesign【发布时间】:2018-10-0710:42:48【问题描述】:代码如下。目前占位符文本与图标重叠。我需要缩进到图标右侧的占位符... 查看详情

如何使用空占位符文本

】如何使用空占位符文本【英文标题】:Howtouseemptyplaceholdertext【发布时间】:2014-05-2006:25:08【问题描述】:这个问题很清楚。我如何使用占位符中的文本,例如来自下面的文本。我一直在寻找这个并没有找到解决方案。我们将... 查看详情

文本区域表单中的 Html 占位符文本

】文本区域表单中的Html占位符文本【英文标题】:Htmlplaceholdertextinatextareaform【发布时间】:2011-06-2815:49:55【问题描述】:在我的一个网站上,我创建了一个表格,用于收集人员姓名、电子邮件和他们的想法的描述。我将描述的... 查看详情