Ham*_*riq 9 php select zend-framework
你好,我一直在寻找它,从最近几个小时,并阅读谷歌可以给我但仍然无法让它工作的每个匹配结果.
我正在通过以下方式创建一个zend表单select元素:
this->addElement('select','my_select', array(
'label' => 'Currency', 'value' => 'blue',
'multiOptions' => array( 'red' => 'Rouge', 'blue' => 'Bleu', 'white' => 'Blanc', ), ) );
Run Code Online (Sandbox Code Playgroud)
现在我想填补它
$form->populate
Run Code Online (Sandbox Code Playgroud)
从控制器,我已经尝试过给出双维数组
$vals = array("my_select" => array("US Dollar", "Pound Sterling"))
Run Code Online (Sandbox Code Playgroud)
然后给它:
$form->populate($vals);
Run Code Online (Sandbox Code Playgroud)
但这并没有用,我不确定这是否有效,目前我正在构建我的数组,就像在array( 'red' => 'Rouge', 'blue' => 'Bleu', 'white' => 'Blanc')zend形式的同一个类中,然后动态地将它传递给addElement multiOptions,正如这家伙在这里建议的那样:
http:// zendguru.wordpress.com/2009/03/06/zend-framework-form-working-with-dropdownselect-list/
有效,但我想通过填充,如果有人可以建议我如何选择默认值好吧,我将非常感激!
谢谢,
Jim*_* W. 10
populate方法允许您使用默认值IE"填充"表单:
$form->populate(array("my_select" => "red");
Run Code Online (Sandbox Code Playgroud)
这会将my_select设置为选中"红色".
编辑
至于多维数组,我不完全确定你想要做什么,你想要另一个选择语句或附加这些项目吗?看起来它应该是另一个选择元素.
看一下它,你想要的是设置选择与populate方法的值,这不是一个选项.但是你可以这样做:
$currency = new Zend_Form_Element_Select('currency', array(
"label" => "Currency",
"required" => true,
));
$currency->addMultiOptions(array(
"US Dollar" => 1,
"Pound Sterling" => 2,
));
$form->addElements(array($currency));
$form->populate(array("currency" => "US Dollar"));
Run Code Online (Sandbox Code Playgroud)
这将添加您的货币选择语句.这应该设置下拉(值数组可能来自数据库等),然后使用populate方法将US Dollar设置为默认值.
| 归档时间: |
|
| 查看次数: |
31602 次 |
| 最近记录: |