Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在选择器不工作的情况下调用.load()_Javascript_Jquery - Fatal编程技术网

Javascript 在选择器不工作的情况下调用.load()

Javascript 在选择器不工作的情况下调用.load(),javascript,jquery,Javascript,Jquery,我在这个问题上做了不少研究,但我就是不明白为什么它不能按应有的方式工作。我有一个表单,用户用Amazon产品ID(ASIN)填写,然后我将该产品ID转换为URL,然后在我的页面上加载该URL。问题是,当我使用带有.load()的选择器仅加载页面的一部分时,.load()没有任何作用 当我移除选择器并仅使用URL.load()时,.load()起作用。这是我的密码: <div id = "html" style = "display: none;"></div> <i

我在这个问题上做了不少研究,但我就是不明白为什么它不能按应有的方式工作。我有一个表单,用户用Amazon产品ID(ASIN)填写,然后我将该产品ID转换为URL,然后在我的页面上加载该URL。问题是,当我使用带有
.load()
的选择器仅加载页面的一部分时,
.load()
没有任何作用

当我移除选择器并仅使用URL
.load()
时,
.load()
起作用。这是我的密码:

<div id = "html" style = "display: none;"></div>
<input id = "url" type = "text" size = "100"></input>
<button id = "load">Load</button>

<script type="text/javascript">
var theURL;

$('#load').on('click', function() {
    if ($('#url').val().length < 14) 
        theURL = 'http://www.amazon.com/dp/' + $('#url').val() + ' #dp';
    else
        theURL = $('#url').val() + ' #dp';
    $('#html').load(theURL);
});
</script>

负载
var-theURL;
$('#load')。在('单击',函数()上){
if($('#url').val().length<14)
theURL=http://www.amazon.com/dp/'+$('#url').val()+'#dp';
其他的
url=$('#url').val()+'#dp';
$('#html').load(theURL);
});
例如,
URL
将是
http://www.amazon.com/dp/B00J4GIRH4 #dp
,并且当我在URL
中有
#dp
选择器时,load()
不会提取任何内容(通过调用
.load()
后检查
#html
元素进行验证)。当
#dp
选择器被移除且
URL
http://www.amazon.com/dp/B00J4GIRH4
.load()
工作正常。
id=“dp”
位于Amazon页面的
正文
元素上。提供给
load()
#
参考将搜索加载面板的后代。不是
主体
元素本身


尝试以子元素为目标,或者在默认情况下返回
body
时忘记选择符。

控制台中有错误吗?假设您没有ID为“html”的元素,并且您实际上在顶级html节点之后。。这不是你想要的吗$('html')。加载(URL)@tymeJV我收到一个
net::ERR\u FILE\u NOT\u FOUND
错误,但我不确定它是否相关。它提供给我的与该错误相关的URL似乎不是我输入的URL,因此我假设该错误可能是从我试图加载的页面运行的脚本造成的,这就是为什么它说找不到文件@Michael不,我正试图用
id=“html”
将代码加载到一个隐藏的类中。好的,如果它是一个类,那么它应该是。htmlRun
console.log(theURL)
就在
load
调用之前-这是你认为的吗?我明白了,也许我应该试试
主体中的选择器?我更愿意使用选择器来阻止Amazon页面上的脚本在我的页面上运行。您可以尝试
id=“a-page
。如果查看Amazon页面的源代码,则其中几乎没有内容。其余内容将动态加载,以阻止人们使用其网站上的内容:)如果您想知道更好的获取方式”“你需要的内容”,这是另一个问题(我确实有相当丰富的经验).:)这实际上是我在自学Javascript后尝试制作的第一个程序,所以我很想听到更多并学习一些新的东西。你是指专门从亚马逊收集信息还是仅仅收集一般信息?请告诉我更多:)从亚马逊和其他网站。我使用WatiN和CSQuery的组合来自动浏览这样页面上的所有内容都是完整的,但是您需要将相关部分存储在您自己的服务器上(您应该这样做)。