我正在使用ajax将一些数据传输到我的页面并使用.html()来更改div的html内容。 除了INTERNET EXPLORER之外,一切都在firefox,google chrome,safari,opera中运行良好。
IE 7,8,9没有响应.html()功能,该div的内容保持不变。
这是我的代码:
var userurl = $('#userthumb a').attr('href');
$(document).ready(function(){
$('#userthumb').after("<div id='to-change'>Loading...</div>");
$.ajax({
type: "GET",
url: "parse.php",
data: "url=" + userurl,
dataType: 'json',
cache: false,
success: function(data)
{
var respond = data['respond'];
$('#to-change').html(respond + 'profile');
} //end of success
}); //end of ajax
});
是否存在任何问题,或者有解决IE问题的方法吗?
答案 0 :(得分:0)
尝试
$('#to-change').html($.parseJSON(data).respond + 'profile');
答案 1 :(得分:0)
这可以解决它:
success: function(data) {
eval('var jSON = '+data);
$('#to-change').html(jSON['respond'] + 'profile');
} //end of success
编辑: 确保您的返回数据采用格式,例如:
{'respond':'it worked as expected','.....':'....'}
在我的vbscripts中,我回复:
response.write "{'Success':'MoveOn','....':'....'}" or
response.write "{'Success':'Error:........','....':'....'}"
然后,
eval('var jSON='+data);
if (jSON['Success'] == 'MoveOn') .......
答案 2 :(得分:0)
试试这个: $('#to-change')。empty()。append(respond +'profile');