有谁知道如何禁用zend元素文本输入控件的Enter keypress事件?当用户在表单元素上按Enter键时,它会尝试发布,我想要禁用它。
答案 0 :(得分:2)
这是您需要做客户端的事情(即使用Javascript)。使用Dojo,它将类似于:
dojo.connect(dojo.byId('FIELDID'), 'onkeydown', function(event){
if (event.keyCode == dojo.keys.ENTER) {
dojo.stopEvent(event);
}
});
将'FIELDID'替换为要将其挂钩的文本字段的ID。如果要将其应用于表单中的所有内容,可以将其与dojo.query
调用结合使用。
jQuery和其他JS框架将具有相同的功能。
答案 1 :(得分:0)
我认为这应该可以解决你的问题
$textField = new Zend_Form_Element_Text("text");
$textField->setAttrib('onkeypress', 'nullifyEnterKey();');
function nullifyEnterKey(e)
{
var key;
if(window.event)
key = window.event.keyCode; //IE
else
key = e.which; //firefox
return (key != 13);
}