$("#loader").load(someurl, null, function ()
{
var html = $("#loader").html();
alert(html); //works
});
然而,
$("#loader").load(someurl, "body", function ()
{
var html = $("#loader").html();
alert(html); //does NOT work
});
我尝试在phonegap / cordova上获取外部主机html数据。
filetransfer.download
API对我的html提取效果不佳,我发现jQuery .load函数效果很好,认为它有用,因为文件管理不涉及但只涉及内存。
问题是,因为整个HTML曾经加载到某些$("#loader")
,css /样式表中,html.body
图层冲突和混乱。
因此,我尝试只获取html的正文部分 http://api.jquery.com/load/
.load( url [, data] [, complete(responseText, textStatus, XMLHttpRequest)] )
但是,[, data]
选项永远不会有效。
"html>body"
不起作用,或者任何选择器似乎都无法正常工作。
这是错误吗?
答案 0 :(得分:2)
选择器应附加到url(用空格分隔)。
$("#loader").load(someurl + ' body', function (){
var html = $("#loader").html();
alert(html);
});
答案 1 :(得分:1)
data参数用于发出加载请求,如果要过滤页面中的内容,则必须将选择器添加到以空格分隔的url的末尾。
$("#loader").load(someurl + ' body', function (){
var html = $("#loader").html();
alert(html);
});
答案 2 :(得分:1)
您只能使用加载方法加载页面的一部分。您需要在第一个参数中提供选择器。 (请参阅Load() api上的Loading Page Fragments
部分)
$('#loader').load('ajax/test.html body',function(){
var html = $("#loader").html();
alert(html);
});