我正在尝试使用以下代码使用jQuery执行AJAX请求:
$.ajax({
type: 'POST',
url: './ajax/mostra_duv.php',
data: 'pag=1&teste=deu',
cache: false,
contentType: false,
processData: false
})
.done(function(data) {
if(data!='')
{
$("#resumoduvida").html(data);
}
else
{
$("#resumoduvida").html('<p>Desculpe, houve um problema na conexão ao servidor. Tente novamente</p>');
}
})
.fail(function() {
$("#resumoduvida").html('<p>Desculpe, houve um problema na conexão ao servidor. Tente novamente</p>');
});
然后,mostra_duv.php只是调用print_r($_POST);
导致一个空数组......
我希望$_POST['pag']
和$_POST['teste']
获得与请求相对应的值(分别为1和&#39; deu&#39;)。
任何帮助表示赞赏!谢谢!
答案 0 :(得分:1)
简单的代码来处理这一点。
$.ajax({
type: 'POST',
url: 'pageToYourScript.php',
data: {page: 1, test: 'test'},
success: function(data){
console.log(data);
},
error: function(jqXHR){
console.log(jqXHR);
}
});
更改值,并处理返回的数据或错误(如果有)。
答案 1 :(得分:0)
我认为使用.post() function:
会更简单$.post('./ajax/mostra_duv.php', { 'pag': 1, 'teste': 'deu' })
.done(function(data) {
if(data!='')
{
$("#resumoduvida").html(data);
}
else
{
$("#resumoduvida").html('<p>Desculpe, houve um problema na conexão ao servidor. Tente novamente</p>');
}
})
.fail(function() {
$("#resumoduvida").html('<p>Desculpe, houve um problema na conexão ao servidor. Tente novamente</p>');
});
您也可能会发现load()也有效。
根据您的上次评论
除非您只打算支持实现(以前称为)XMLHttpRequest Level 2的浏览器,否则您无法通过Ajax上传文件。有插件可以帮助你;我个人最喜欢的是Mike Alsup的Form插件(因为它还添加了其他辅助函数):http://malsup.com/jquery/form/#file-upload
答案 2 :(得分:-1)
您收到的数据是什么?
我认为你错过了dataType: "html"
在ajax里面。
$.ajax({
type: 'GET',
dataType: 'html',
url: './ajax/mostra_duv.php',
data: 'pag=1&teste=deu',
cache: false,
contentType: false,
processData: false
})