Ell*_*iot 0 javascript forms ajax jquery
所以这有点复杂.我有一个表格,我需要将结果提交到两个不同的地方.
第一个是ajax调用,我将结果发送到PHP页面.第二个是提交表格,照常营业.
这是我的javascript:
<script type="text/javascript">
$(function() {
$("#requestaction").click(function() {
var fname = $("input#first_name").val();
var lname = $("input#last_name").val();
var email = $("input#email").val();
var phone = $("input#phone").val();
var oid = $("input#oid").val();
var retURL = $("input#retURL").val();
var dataString = '&email=' + email + '&phone=' + phone + '&oid=' + oid + '&retURL=' + retURL;
//alert (dataString);return false;
$.ajax({
type: "POST",
url: "http://www.myurl.com/custom/callgateway.php?first_name=" + fname + "&last_name=" + lname,
data: dataString
});
$("#requestaction").click(function() {
$("#oid").delay(1000);
$("#nashform").submit();
});
return false;
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
所以我想要发生的是ajax调用将结果发送到该页面.然后我想要几秒钟的延迟,或者需要很长时间才能完成,我希望提交#nashform ID的表单.似乎我可以让它们分开发生,但是当我同时尝试这个代码时 - 只有#nashform代码完全通过,ajax永远不会有机会.
有什么建议?
将表单提交放在ajax调用的成功回调中:
$.ajax({
type: "POST",
url: "http://www.myurl.com/custom/callgateway.php?first_name=" + fname + "&last_name=" + lname,
data: dataString,
success: function(response) { $("#nashform").submit(); }
});
Run Code Online (Sandbox Code Playgroud)