我有一个javascript函数,里面有两个$ .post请求。$ .post请求都应该执行。但有时,第二个$ .post请求不会被执行。可能是什么原因?
0
A
回答
1
$.post()
是$ .ajax()结构的缩写形式。我通常喜欢使用$.ajax()
结构,因为:
- 很容易地看到,如果我错过了什么
- 我可以更容易地添加额外的参数,可以如
- 当新阿贾克斯,我发现它相当容易解决这种结构
在你的情况,你可能会发现你的问题更容易在$.ajax()
结构来解决,因为它会更容易地看到,第二Ajax调用(即取决于第一个ajax调用的结果)必须发生在第一个ajax调用的成功函数中。
这里是一个独立的例子(太糟糕的jsfiddle不能处理Ajax ...):
TESTER.PHP
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#eml').focus();
$('#mybutt').click(function() {
var $a = $('#eml').val();
var $b = $('#pw').val();
//alert('Email: ' +$a+ ' Pass: ' +$b);
$.ajax({
type:"POST",
url: "yourphpfile.php",
data: 'email=' +$a+ '&pass=' +$b,
success: function(data) {
alert(data);
var aData = data.split('|');
var name = aData[0];
var code = aData[1];
alert('Name: ' +name+ ' Code: ' +code);
$.ajax({
type:"POST",
url: "yourphpfile.php",
data: 'name=' +name+ '&code=' +code,
success: function(newdata) {
alert(newdata);
} //END success_ajax2
}); //END ajax() #2
} //END success_ajax1
}); //END ajax() #1
}); //END mybutt.click()
}); //END $(document).ready()
</script>
</head>
<body>
Email: <br />
<input type="text" id="eml" /><br />
Password: <br />
<input type="password" id="pw" /><br />
<input type="button" id="mybutt" value="Submit">
</body>
</html>
yourphpfile.php
<?php
if (isset($_POST['email'])) {
$e = $_POST['email'];
$p = $_POST['pass'];
$name = 'Bob';
$code = '1234';
$resp = $name .'|'. $code;
echo $resp;
}else if (isset($_POST['name'])) {
$n = '<h1>Here is something new</h1>';
echo $n;
}
+0
我在代码片段中给出的第一个嵌套第二个$ .post请求,现在代码工作正常。 –
相关问题
- 1. 多个AJAX POST请求的第一个
- 2. 执行一个POST请求在Android的
- 3. 直到完成第一个post请求才发送jQuery post请求
- 4. PHP多个Ajax请求:第一个请求块第二个请求
- 5. ColdFusion CFHTTP Post正在执行第二个GET请求之后
- 6. node.js无阻塞POST请求等待另一个POST请求
- 7. 转换一个请求HTTP POST龙卷风post请求
- 8. 所有POST请求的一个选项
- 9. POST请求到一个REST服务器
- 10. 做一个POST请求到twitter
- 11. 如何将一个POST请求转发到两个外部URL?
- 12. Node.js请求 - 处理多个POST请求
- 13. 发送一个POST请求到一个来自C#的URL请求#
- 14. 发送一个HTTP POST请求,但JBOSS收到一个空的GET请求
- 15. 套接字服务器没有得到第二个请求
- 16. Java - 在同一个连接上执行一个http请求POST和GET
- 17. 同时发送两个请求第一个请求与C#WebClient和第二个请求与Ajax
- 18. Unity3D,创建一个JSON post请求
- 19. 创建一个POST请求并取回
- 20. javafx在webenigne做一个http post请求
- 21. jQuery的一个ajax post请求
- 22. 如何使一个POST请求API
- 23. Nginx的一个POST请求名为.js
- 24. 做一个POST请求与排球
- 25. 杀死一个http post请求
- 26. 发送一个AJAX POST请求
- 27. 如何写一个POST请求
- 28. PHP多个POST请求
- 29. 发生多个POST请求
- 30. 得到一个http请求
我们需要看你的代码。请设置一个小提琴。 http://jsfiddle.com –
请更具体。提供相关的代码片段。没有任何代码就无法进行调试。 –
原因是你的代码有错误。回答...现在你应该放更多的代码。 –