Javascript Ajax在提交时不启动
我正在尝试创建一个对URL有操作的表单。但它首先需要ajax提交,然后才应该提交给操作 它应该给我发一封电子邮件(在newsletter.php中)Javascript Ajax在提交时不启动,javascript,jquery,ajax,Javascript,Jquery,Ajax,我正在尝试创建一个对URL有操作的表单。但它首先需要ajax提交,然后才应该提交给操作 它应该给我发一封电子邮件(在newsletter.php中) $(函数(){ $(“#注册”)。在('submit',函数(e,response){ if(response.errors==false){ $.ajax({ 键入:“GET”, url:'newsletter.php', 数据:{ 名称:$('#os0').val(), 电子邮件:$('#os1').val() }, 成功:功能(数据){ $
$(函数(){
$(“#注册”)。在('submit',函数(e,response){
if(response.errors==false){
$.ajax({
键入:“GET”,
url:'newsletter.php',
数据:{
名称:$('#os0').val(),
电子邮件:$('#os1').val()
},
成功:功能(数据){
$(“#订阅”).submit();
},
错误:函数(XMLHttpRequest、textStatus、errorshown){
//错误处理
}
});
返回false;
}
返回true;
});
});
HTML
$(函数(){
$(“#注册”)。在('submit',函数(e,response){
$.ajax({
键入:“GET”,
url:'newsletter.php',
数据:{
名称:$('#os0').val(),
电子邮件:$('#os1').val()
},
成功:功能(数据){
$(“#注册”)[0]。提交();
},
错误:函数(XMLHttpRequest、textStatus、errorshown){
//错误处理
}
});
返回false;
});
});
请注意
$(“#注册”)submit()之间的差异代码>和$(“#注册”)[0]。提交()
这将是一个永不中断的循环。您的提交处理程序应该从何处获取名为response
的变量…?这里response
在做什么?它将是未定义的
。检查此提琴:(具有防止默认操作)@karthikr它似乎不工作,只有响应未定义。抱歉-我粘贴了错误的提琴链接。这就是我的意思。。无论如何。。看起来你得到了你想要的东西。您可能也想阻止默认操作。。。(e.preventDefault())
<script type='text/javascript'>
$(function () {
$("#signup").on('submit', function( e, response ) {
if (response.errors == false) {
$.ajax({
type : 'GET',
url : 'newsletter.php',
data: {
name : $('#os0').val(),
email: $('#os1').val()
},
success : function(data) {
$('#subscribe').submit();
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
// error handling
}
});
return false;
}
return true;
});
});
</script>
<form name="signup" id="signup" action="" method="GET">
<input type="text" id="os0" name="Email" />
<input class="text" id="os1" type="text" name="cd_FULLNAME" />
<input type="Submit" name="Submit" id="subscribe" value="Subscribe" />
</form>
<script type='text/javascript'>
$(function () {
$("#signup").on('submit', function( e, response ) {
$.ajax({
type : 'GET',
url : 'newsletter.php',
data: {
name : $('#os0').val(),
email: $('#os1').val()
},
success : function(data) {
$("#signup")[0].submit();
},
error : function(XMLHttpRequest, textStatus, errorThrown) {
// error handling
}
});
return false;
});
});
</script>