我在我的应用中使用了以下这一行。但是现在我需要在显示之前解析加载的html。什么是获得某些HTML元素的最佳方式。
$("#div").load("page.html");
由于
已更新
现在我正在使用此功能,但无法使用id“div”来设置div的title属性。
function get_title()
{
$.get("test.html", function(data) {
var data = $(data);
var title = $("#div", data).attr("title");
alert(title);
});
}
var数据中的html看起来像这样。
<div id="div" title="title example">
<p>
Content
</p>
<p>
Content
</p>
</div>
再次感谢
答案 0 :(得分:22)
您可以使用$.get()
的半等效扩展版本,如下所示:
$.get("page.html", function(data) {
var data = $(data);
//do something
$("#div").html(data);
});
请注意,在这种情况下调用.html(data)
只是a shortcut for .empty().append(data)
。
或者,如果可以选择后处理,只需使用.load()
回调,如下所示:
$("#div").load("page.html", function() {
$(this).find(".class").remove(); //just an example
});
答案 1 :(得分:5)
您应该调用.load()
来执行AJAX请求并手动处理响应,而不是调用$.get
。
答案 2 :(得分:5)
jQuery.ajax({
url:'your_url',
type:'get',
dataType:'html',
success:function(data)
{
var _html= jQuery(data);
//do some thing with html eg: _html.find('div').addClass('red')
jQuery('#target').html(_html);
}
});