0
我有一个脚本向服务器发出ajax请求。然后服务器返回HTML代码。请求完成后,我想将HTML代码放到我的网站上。jQuery .html(someHTML)不起作用
我遇到的问题是功能.html()
将显示HTML为文本而不是HTML。
这里是我做了什么
var postData =
{
'campaign_id': 1,
'page_role': 'intro'
};
$.ajax({
type: 'POST',
url: 'url/to/get/html',
data: postData,
dataType: "text",
beforeSend: function(jqXHR, settings){
$('#MasterContentViewer').html('<div class="well innerwell">' +
'<h3>Please wait while loading the next page</h3>'+
'</div>');
},
error: function(jqXHR, textStatus, errorThrown){
alert('Loading content failed! Error Code: ' + jqXHR.status);
},
success: function(page){
$('#MasterTable').removeClass('heightForIFrame');
$('#MasterContent').removeClass('heightForIFrame');
$('#MasterContentViewer').html(page);
}
}).done(function(page) {
var tags = $("meta[name^='is_system_'],meta[name^='is_attr_']");
$.each(tags, function(index, tag){
var value = $(tag).attr('value');
var name = $(tag).attr('name').replace('is_attr_', '').replace('is_system_', '');
$('#attr_' + name + ':input').val(value);
$('#attr_' + name).not('input').text(value);
$('.attr_' + name + ':input').val(value);
$('.attr_' + name).not('input').text(value);
});
我试图改变以下类似
$('#MasterContentViewer').html(page);
到
$('#MasterContentViewer').empty().append(page);
也没有工作。
我也尝试将dataType从“text”更改为“html”,这也不起作用。
如何让页面显示html代码而不是文本?
修订
下面是用户看到的屏幕
<strong>Store Name: </strong><span class="attr_storename"></span> </div> <div class="scripter_header_label"> <strong>Store Number: </strong><span class="attr_alt_id_1"></span>
您是否检查过您收到的回复是HTML字符串而不是呈现的HTML? – stark
不确定你的意思,但我的网页显示用户的HTML标签,而不是呈现HTML –
你可以发布你在'page'变量中收到的值吗? – stark