Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery Ajax提交页面刷新_Jquery_Ajax_Forms_Onsubmit_Preventdefault - Fatal编程技术网

Jquery Ajax提交页面刷新

Jquery Ajax提交页面刷新,jquery,ajax,forms,onsubmit,preventdefault,Jquery,Ajax,Forms,Onsubmit,Preventdefault,我已经疯了,我似乎不知道如何在通过ajax提交表单时阻止页面刷新 我已经设置了一个JSFIDLE供您查看: 我已经完成了event.prefentDefault()并返回false;但似乎无法让它工作。我只是愚蠢吗 最终的结果应该是,当表单提交时,表单区域应该显示出来,并被“隐藏”的ajax_消息替换,该消息的简单内容是:“检查您的手机” 提前感谢您保存我的发际:)您submit\u number函数在“document ready”事件处理程序中定义,并且仅在该函数(作用域)及其子函数中可见,

我已经疯了,我似乎不知道如何在通过ajax提交表单时阻止页面刷新

我已经设置了一个JSFIDLE供您查看:

我已经完成了event.prefentDefault()并返回false;但似乎无法让它工作。我只是愚蠢吗

最终的结果应该是,当表单提交时,表单区域应该显示出来,并被“隐藏”的ajax_消息替换,该消息的简单内容是:“检查您的手机”


提前感谢您保存我的发际:)

submit\u number
函数在“document ready”事件处理程序中定义,并且仅在该函数(作用域)及其子函数中可见,因此您不能从HTML中使用它,因为HTML中只有全局作用域可用

如果您激活了firebug或类似的东西,您将在错误控制台中看到它

要让它工作起来,一个快速的破解方法就是替换

function submit_number(event) {

因此,明确地将您的函数放在全局范围内,但这不是推荐的方法。用你的单一功能来污染全球范围是没有意义的

更好的方法是将函数注册为JS中的事件处理程序,如下所示:

$('form.kinkast_signup').submit(submit_number);
另外,您可能希望向该表单添加一个ID,并通过ID而不是类名引用它。

将其绑定到JavaScript,而不是在表单中使用“onclick”

因此,与其

function submit_number(event)

preventDefault()可以删除。

请检查以下内容:


当onclick事件发生时调用的函数应该只返回false。

试试这个

我修复了你的小提琴:

我只是悄悄地分配了事件处理程序,如:

$('#idOfTheForm').submit(function(event){
    ...
});
$(form).submit(function(event)
<form method="post" class="kinkast_signup" onsubmit="submit_number(); return false">
<input id="login_email" type="text" name="to" />
<input id="signInButtonSubmit" type="submit" name="action" value="Send" />
</form> 
    window.submit_number=function() {
           //Prevent Default page refresh on submit
            //event.preventDefault();

......
}
$('#idOfTheForm').submit(function(event){
    ...
});