繁体   English   中英

如何在Zend Framework中使用ViewHelper设置Select lke disabled ='disabled'的任何属性

[英]How to set any attribute of Select lke disabled='disabled' by using ViewHelper in Zend Framework

我正在使用Zend Frameworks ViewHelpers。 我试图传递一些东西来设置SELECT中的禁用属性。 例如,如果

$countries = array(1=>'Select Option', 2=>'us', 3=>'uk')

formSelect('country','us',null,$this->countries)

我需要先拨打第一个选项,即“选择选项”

你有什么主意吗 ?

谢谢你的补充

我不认为你可以禁用一个元素? 如果你禁用它然后为什么要它?

您只能禁用整个<select>输入。

建议您编写验证以不接受第一个元素。

OP关于能够做到这一点的评论后编辑

这是另一个答案

// Get the countries element (do this after adding your options), then set the 
// attribute disable for option '1'
$form->getElement("countries")->setAttrib("disable", array(1));

这个建议在这里

有一种方法可以通过Zend_Form来实现(至少在我目前的1.11版本中):

$this->addElement
(
    "select","selectName", 
    array("multiOptions"=>array("one","two","three"), "disable"=>array(0,1))
);

那个将禁用前两个选项。

信用归于jakenoble。
只需重新格式化代码即可使用formSelect-viewhelper而不是form-element。

<?php
$countries = array(1 => 'Select Option', 2 => 'us', 3 =>'uk');
echo $this->formSelect('country', 2, array('disable' => array(1)), $countries)

这将导致:

<select name="country" id="country"> 
    <option value="1" label="Select Option" disabled="disabled">Select Option</option> 
    <option value="2" label="us" selected="selected">us</option> 
    <option value="3" label="uk">uk</option> 
</select>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM