我正在尝试使用ajax html响应中的内容更新div。我觉得我的语法是正确的,但是div内容被整个HTML页面的响应替代,而不是html响应中选择的div。我究竟做错了什么?
<script> $('#submitform').click(function() { $.ajax({ url: "getinfo.asp",data: { txtsearch: $('#appendedInputButton').val() },type: "GET",dataType : "html",success: function( data ) { $('#showresults').replaceWith($('#showresults').html(data)); },error: function( xhr,status ) { alert( "Sorry,there was a problem!" ); },complete: function( xhr,status ) { //$('#showresults').slideDown('slow') } }); }); </script>
解决方法
您正在设置任何数据的#showresults的html,然后将其替换为本身,这没有什么意义?
我猜你真的想在返回的数据中找到#showresults,然后使用来自ajax调用的html更新DOM中的#showresults元素:
我猜你真的想在返回的数据中找到#showresults,然后使用来自ajax调用的html更新DOM中的#showresults元素:
$('#submitform').click(function () { $.ajax({ url: "getinfo.asp",data: { txtsearch: $('#appendedInputButton').val() },dataType: "html",success: function (data) { var result = $('<div />').append(data).find('#showresults').html(); $('#showresults').html(result); },error: function (xhr,status) { alert("Sorry,there was a problem!"); },complete: function (xhr,status) { //$('#showresults').slideDown('slow') } }); });