代码如下:
$.ajax({
type: "POST",
url: "http://localhost:3000/rcm/global_config/update",
data: {k: 'sdfa', v: 'dsfas'},
success: function(data, textStatus, XMLHttpRequest){
alert("数据更新成功");
},
error: function(xhr,textStatus, errorThrown){
alert("数据更新失败,请刷新回滚");
}
});
在服务器中我无法获取post参数,然后我篡改ajax发送的请求,它根本不发送数据参数。我不知道我错在哪里。
提前谢谢。
答案 0 :(得分:1)
此问题已在SO jquery-ajax-post-sending-options-as-request-method-in-firefox
中提出并已解决这是因为FF的原始政策相同。它只允许您对自己的域执行XMLHTTPRequests。 也许您的脚本从域“localhost”和您的ajax请求加载到“localhost:3000”
答案 1 :(得分:0)
请尝试此
$.ajax({
type: "POST",
url: "http://localhost:3000/rcm/global_config/update",
data: "{'k': 'sdfa', 'v': 'dsfas'}", // Change are here in this line
success: function(data, textStatus, XMLHttpRequest){
alert("数据更新成功");
},
error: function(xhr,textStatus, errorThrown){
alert("数据更新失败,请刷新回滚");
}
});
答案 2 :(得分:0)
$.ajax({
type: "POST",
url: "http://localhost:3000/rcm/global_config/update",
data: $.param({k: 'sdfa', v: 'dsfas'}),
success: function(data, textStatus, XMLHttpRequest){
alert("数据更新成功");
},
error: function(xhr,textStatus, errorThrown){
alert("数据更新失败,请刷新回滚");
}
});
在$ .param中包装数据对象应该这样做。它会将该对象转换为字符串“k = sdfa& v = dsfas”
答案 3 :(得分:0)
$.ajax({
type:"POST",
url:"student/info/ajax.php",
data:({type:'test', r:which}),
success:function(data){
if((data.result)=='true')
$('#result_popup').html(data.output);
},
dataType:"json"});
return false;