据我所知,return false的默认处理是:
<input type="submit" onclick="return false" />
但是在我的代码中,我想让一个提交按钮运行一个单独的js函数onclick
,它将根据用户选择的单选按钮给出ajax输出。
但由于我使用ajax和我的js函数来处理输出,我希望提交按钮返回false。
但如果我已经使用onclick
指向该函数:
<input type="submit" onclick="jsfunction()" />
我把返回false放在哪里?
我可以有2个onclick
语句吗?
我想象的另一个选择是,如果我知道无论函数返回哪个值,我都不会提交表单,那根本不应该是提交按钮?
但如果是这样的话,是否有一个按钮,我可以在html中编码,看起来与提交相同,但没有提交属性?
答案 0 :(得分:19)
尝试将您的方法(jsmethod)添加到您的表单onsubmit处理程序,如此
<form onsubmit="jsfunction(); return false;">
并删除输入onclick处理程序。
答案 1 :(得分:10)
就这样做
<input type="submit" onclick="return jsfunction()" />
功能改变
function jsfunction()
{
//you code
return false;
}
或者只是尝试,如果你不想改变功能
<input type="submit" onclick="jsfunction();return false;" />
答案 2 :(得分:3)
像这样:
<input type="submit" onclick="jsfunction();return false;" />
或只使用按钮而不是提交按钮:
<input type="button" value="Submit" onclick="jsfunction();" />
答案 3 :(得分:0)
不,你不能拥有2个onclick
声明,但你可以在同一个onclick
中调用多个函数,如:
<input type="submit" onclick="jsfunction();anotherFunction();" />
在另一个功能中你可以拥有:
function anotherFunction(){
return false;
}