Javascript 使用Prototype如何防止按钮提交表单?
我有一张有两个按钮的表格。最下面的一个应该将表单提交给服务器。在窗体的中间有另一个按钮需要触发一个简单的评分函数,并在一个新的表单字段中添加这个分数值(根据它的存在将不会提交)。p> 使用Prototype js库,我如何取消这个中间按钮提交表单并让它执行我的计算/DOM添加功能 编辑: 我目前所做的并没有阻止表单提交Javascript 使用Prototype如何防止按钮提交表单?,javascript,forms,prototypejs,dom-events,Javascript,Forms,Prototypejs,Dom Events,我有一张有两个按钮的表格。最下面的一个应该将表单提交给服务器。在窗体的中间有另一个按钮需要触发一个简单的评分函数,并在一个新的表单字段中添加这个分数值(根据它的存在将不会提交)。p> 使用Prototype js库,我如何取消这个中间按钮提交表单并让它执行我的计算/DOM添加功能 编辑: 我目前所做的并没有阻止表单提交 $$('.form-submit-calculate').each(function(calculator){ calculator.observe("click",functi
$$('.form-submit-calculate').each(function(calculator){
calculator.observe("click",function(){alert('calculate'); return false; });
});
为了
得分
只需将此功能附加到您不想提交的按钮的单击事件上即可返回false。您也可以在事件函数中使用e.preventDefault。只需将该函数附加到您不想提交的按钮的单击事件上即可返回false。您还可以在事件函数中使用e.preventDefault。这似乎对我来说很有用:
Event.observe('scoreButton', 'click', function(e) {
Event.stop(e);
}
});
$$('.form-submit-calculate').each(function(calculator){
calculator.onclick = function(){
alert('calculate');
return false;
}
});
请随意告诉我你更好更优雅的答案!(为什么会这样……我现在只是在尝试原型,不知道最佳实践是什么。)这似乎对我很有帮助:
$$('.form-submit-calculate').each(function(calculator){
calculator.onclick = function(){
alert('calculate');
return false;
}
});
请随意告诉我你更好更优雅的答案!(为什么会这样……我现在只是在尝试原型,不知道最佳实践是什么。)您的
按钮不需要自动提交表单
给它一个type=“button”
,什么也不会发生。type=“button”
没有默认操作。然后在JS中设置动作
阅读更多信息:您的按钮不需要自动提交表单
给它一个type=“button”
,什么也不会发生。type=“button”
没有默认操作。然后在JS中设置动作
阅读更多信息:Hmm,请参阅我的编辑。我想我现在有了,但它不起作用了。嗯,看看我的编辑。我想我现在有了它,但它不起作用。环绕图书馆的道具+我喜欢这样的解决方案。我还了解到,IE中默认的类型
已经是按钮
,但所有其他浏览器都有默认的提交
道具,用于浏览库+我喜欢这样的解决方案。我还了解到IE中默认的类型
已经是按钮
,但所有其他浏览器都有默认的提交
这是正确的方法。被接受的答案是不可接受的。这是正确的做法。被接受的答案是不可接受的。