我有一个脚本使用Ajax(POST方法)通过普通的Javascript工作。 现在我正在尝试学习JQuery,因为它似乎更容易,但我对请求的响应有问题
$.post('ajax/wrapper.php', {'desc':$('#description').val()},
function(data){
$('#something').html(data);
});
当我这样做时,请求已成功发送。我可以看到我的数据库上的更改,但响应没有显示在div#something中。 我也试过
...
$('#something').html($(data));
...
提前致谢
答案 0 :(得分:0)
你也可以这样试试
var jqxhr = $.post("ajax/wrapper.php",{desc:$('#description').val()}, function(data) {
alert("success");
});
显示success
回调
jqxhr.complete(function(data){
$('#something').html(data);
});
答案 1 :(得分:0)
您可以使用$ .load
$("#something").load('ajax/wrapper.php', {'desc':$('#description').val()} );
答案 2 :(得分:0)
注释掉以下行:header(“Content-type:text / xml; charset = iso-8859-1”)
请参阅this document中的jQuery.ajax和dataType
参数。您应该返回带有text / html MIME类型的HTML,或者将dataType
参数设置为'html':
$.ajax('ajax/wrapper.php', {
data: {'desc':$('#description').val()},
dataType: 'html',
type: 'POST',
success: function(data){
$('#something').html(data);
}
}).then(console.log); // debug
第一个是可取的,因为你真的要返回HTML,而text / html是正确的MIME。
答案 3 :(得分:0)
试试这个:
$.post('ajax/wrapper.php', {'desc':$('#description').val()},
function(data){
$('#something').html(data);
}, "html");
答案 4 :(得分:-1)
尝试:
$('#something').html($.ajax({
type: "POST",
url: "ajax/wrapper.php",
async: false
}).responseText)