-1

我有这样的 $.get 方法:

$.get("/url" , function(z) {
   var a = $(z).find("span");
   for (var i = 0 ; i<a.length; i++){
      var v = $(a).eq(i).children("strong:first").text();
      alert(v);
   }
});

但是屏幕不打印结果v所以你能告诉我是什么问题吗?

4

1 回答 1

-1

您可以.each()在这种情况下使用而不是定义 for 循环

$.get("/url" , function(z) {
   var a = $(z).find("span");
   a.each(function(){
      var v = $(this).children("strong:first").text();
      alert(v);
   });
});

这假设z来自 get 响应的数据是具有子跨度的有效 DOM 结构。

v为了被调用的警报z必须看起来像这样

<div>
    <span>
        <strong>will alert</strong>
        <strong>will not alert</strong>
    </span>
    <span>
        <strong>will alert</strong>
        <strong>will not alert</strong>
    </span>
</div>

span/结构必须是strong这样才能使您的选择器匹配,因为.children()只有一个元素深

于 2013-09-11T05:06:38.687 回答