我使用 zend 框架 2 在表单对象上创建了一个多选框:
$contacts = new Element\Select('contacts');
$contacts->setLabel('All Contacts')
->setAttribute('name', 'contacts')
->setAttribute('multiple', 'multiple')
->setAttribute('size', 10)
->setOptions(array('options' => $users));
当按下表单上的按钮时,我想执行一些 javascript:
$moveAllRight = new Element\Button('moveAllRight');
$moveAllRight->setLabel('Move All ->')
->setAttribute('value', 'Move All ->')
->setAttribute('onClick', 'moveAll(this.form.contacts,this.form.newContacts)');
不幸的是,在创建页面时,多选元素的名称会附加 []:
<select name="contacts[]" multiple="multiple" size="10">
我尝试更改 js 函数调用中的名称:
->setAttribute('onClick', 'moveAll(this.form.contacts[],this.form.newContacts[])');
但我仍然没有任何运气让它工作。如果我从选择框中删除多个选项,它会起作用,但如果可能的话,我想使用多个选择框。反正有没有使这项工作?