我想计算远程页面上的元素数量: 例如远程页面:
test.html具有以下结构
<div id="Layout">
<div class="product">...</div>
<div class="product">...</div>
<div class="product">...</div>
</div>
然后我想从test2.html打电话
<script type="text/javascript">
$(document).ready(function(){
$('#result').load('/test.html #Layout product').length();
});
</script>
此代码无效。做正确的方法是什么? 谢谢。
答案 0 :(得分:2)
您需要等到实际加载元素,您可以使用$.load
方法的回调函数参数:
$(document).ready(function(){
$('#result').load('/test.html #Layout', function () {
var products = $('.product', this).length;
alert(products);
});
});
检查上面的示例here。
此外,如果您不想将加载的元素插入DOM,则可以将它们加载到新的空元素中,例如:
$('<div></div>').load('/test.html #Layout', function () {
var products = $('.product', this).length;
alert(products);
});