如何在远程页面上使用jquery数量的元素进行计数?

时间:2010-06-04 23:09:03

标签: jquery

我想计算远程页面上的元素数量: 例如远程页面:

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>

此代码无效。做正确的方法是什么? 谢谢。

1 个答案:

答案 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);
});