【发布时间】:2010-10-02 08:42:40
【问题描述】:
我有一个带有 jsId="saveParamButtonWidget" 的 Dojo SubmitButton。我通过放置覆盖了它的 onClick 方法:
saveParamButtonWidget.onClick = editParam
我这样定义了 editParam() 函数:
function editParam(eventObj) {
dojo.stopEvent(eventObj);
// ...
}
dojo.stopEvent() 应该停止事件冒泡和默认处理。但是,浏览器无论如何都会提交表单。我还尝试了以下方法:
function editParam(eventObj) {
eventObj.stopPropagation();
eventObj.preventDefault();
// ...
}
同样的事情。我设法阻止表单提交的唯一方法是从事件处理程序返回“false”:
function editParam(eventObj) {
// ...
return false;
}
谁能告诉我为什么前两种方法不起作用?谢谢。
【问题讨论】:
-
请提供更多信息:您使用了什么类型的小部件(全名),dojo 不知道“SubmitButton”,我想这是一个 dijit.form.Button,类型为“提交”。一个代码 sn-p 会有很大帮助
-
对不起,我使用的是 Zend Framework 的 Dojo 提交元素,称为 SubmitButton。但你是对的,它是一个 dijit.form.Button,类型为“submit”。
标签: javascript dojo