发布网友 发布时间:2022-04-24 09:02
共3个回答
热心网友 时间:2022-04-25 11:45
一楼已经告诉你了修改的方法,但是他没有告诉你原因.
因为form的onsubmit事件在处理某一个特定的事件完毕后,如果没有flase将其发送截下来的话,还是会向页面发送请求的.
如果onsubmit="return false"则表示不再发送结果.这个事件往往用于验证前,比如在输入内容是检查内容是否适合.如:
fucntion chk(){
if(document.all.foo.value=="")
return false;
}
只要在form中的onsubmit="return chk();"这时如果你的foo中输入的是空值时则不会发送.
显然,你的情况是不想让其再发送了,所以执行你的函数后使用一个return false即可.
当然,也可以将你的ajax()函数的最结尾加一个return false,目的是让这个函数一定返回一个false时,可使用onsubmit="return ajax();"就可以只发送ajax请求,而不再发送默认的请求了!
热心网友 时间:2022-04-25 13:03
这样也很不错:
<form method="GET">
<input type="text" name="foo"/>
<input type="button" value="submit" onclick="ajax();" />
</form>
热心网友 时间:2022-04-25 14:38
<form method="GET" onsubmit="ajax();">
改成
<form method="GET" onsubmit="ajax();return false;">