Jquery Ajax POST请求失败
Jquery Ajax POST request failing
有人能告诉我为什么这个请求不执行成功代码吗?
$(document).ready(function(){
var post_data = [];
$('.trade_window').load('signals.php?action=init');
setInterval(function(){
post_data = [ {market_number:1, name:$('.trade_window .market_name_1').text().trim()},
{market_number:2, name:$('.trade_window .market_name_2').text().trim()}];
console.log(JSON.stringify({markets: post_data}));
$.ajax({
url: 'signals.php',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data:{markets:post_data},
dataType: "json",
success: function(){
console.log("IT WORKED");
},
failure: function(result){
console.log("FAILED");
console.log(result);
}
});
}, 10000);
});
当我检查console.log(JSON.stringify({markets: post_data}));
的输出是得到这在谷歌浏览器的结果:
{"市场":[{"market_number":1、"名称":"GBPUSD"},{"market_number":2,"名字":"目前"}]}
但是我从来没有把"IT WORKED"打印到控制台,这意味着它从来没有工作过。
在进一步检查时,我在PHP中创建了一个if语句来检查是否有任何内容被发布
if(!empty($_POST))
echo "POSTED!!!!!";
else
echo "NOT POSTED";
但是我总是在屏幕上看到"NOT post "。
任何想法?
谢谢你的帮助
使用以下代码:
$(document).ready(function(){
var post_data = [];
$('.trade_window').load('signals.php?action=init');
setInterval(function(){
post_data = [ {market_number:1, name:$('.trade_window .market_name_1').text().trim()},
{market_number:2, name:$('.trade_window .market_name_2').text().trim()}];
console.log(JSON.stringify({markets: post_data}));
$.ajax({
url: 'signals.php/',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data:{markets:post_data},
dataType: "json",
success: function(){
console.log("IT WORKED");
},
failure: function(result){
console.log("FAILED");
console.log(result);
}
});
}, 10000);
});
您可以轻松地在ajax
请求中传递POST
数据而不需要JSON.stringify
。
$(document).ready(function(){
var post_data = [];
$('.trade_window').load('signals.php?action=init');
setInterval(function(){
post_data = '&market_number1=1&name1='+$(".trade_window .market_name_1").text().trim()+'&market_number2=2&name2='+$(".trade_window .market_name_2").text().trim();
$.ajax({
url: 'signals.php',
type: 'POST',
data: post_data,
dataType: "json",
success: function(){
console.log("IT WORKED");
}
});
}, 2000);
});
如果你想使用json。Stringyfy和读取数据在PHP端。这是正确的做法
data: {json: json。stringify({市场:post_data})}
$(document).ready(function(){
var post_data = [];
//$('.trade_window').load('signals.php?action=init');
setInterval(function(){
post_data = [ {market_number:1, name:$('.trade_window .market_name_1').text().trim()},
{market_number:2, name:$('.trade_window .market_name_2').text().trim()},];
console.log(JSON.stringify({markets: post_data}));
$.ajax({
url: 'signals.php',
type: 'POST',
data: {json: JSON.stringify({markets: post_data})},
dataType: "json",
done: function($msg){
console.log("IT WORKED");
}
});
}, 2000);
});
在PHP中你可以做任何
$json = json_decode($_POST["json"]);
print_r($json);
或
if(isset($_POST["json"])){
$json = json_decode($_POST["json"]);
if(!empty($json))
echo "POSTED!!!!!";
else
echo "NOT POSTED";
}
din
相关文章:
- 一台特定计算机的Ajax请求数据未定义/失败
- 当我在chrome中切换设备模式时,$http.get请求失败
- Ajax错误检查-如果Ajax请求失败,如何防止内容发生更改
- Javascript-为什么我的JQueryAJAX请求失败
- Android/Chrome jQuery AJAX请求在到达服务器之前失败,并出现parserror
- 由于adblock,Javascript Ajax请求在chrome中失败,我有什么选择
- AJAX 请求不会在 400 个错误查询上执行失败
- Python POST 请求失败
- Ajax GET 请求的 URL 失败,但 hurl.it 相同 URL 的 GET 请求有效.什么给
- 对php的Angular post请求失败
- xml在使用SSL https请求时失败
- JQuery发布请求失败,发布后没有警报
- AJAX获取请求有时会在iOS Safari上失败
- Jquery Ajax请求失败
- AJAX请求json失败
- 如何根据ajax get请求的成功/失败在适当的范围内更改javascript变量
- node.js请求js与curl相比失败
- 如何判断哪个ajax请求失败
- gwt使用本机javascript向远程服务器发送POST请求失败
- 在Jasmine单元测试中,如何强制失败回调来触发失败请求