jQuery .each for Sub-elements

时间:2016-09-14 22:49:59

标签: jquery each

我试图使用jquery,它的每个函数都是这种结构中的get值:

     <div id="test">
       <p><input name="name1" value="Z1"></p>
       <p><input name="name2" value="Z2"></p>
       <p><input name="name3" value="Z3"></p>
       <p><input name="name4" value="Z4"></p>
      </div>

我尝试过使用

        $('#test').find('input').each(function () { }
        $('#test > p').children('input').each(function () { }

但我得到的价值 警报($(本)。价值); 始终是“未定义的”#。有什么想法可能会发生什么?

5 个答案:

答案 0 :(得分:2)

检索元素的两种方法都可以正常工作。由于您访问输入值的方式,您看到了undefined.val()而不是.value

所以:

&#13;
&#13;
$('#test').find('input').each(function() {
  $(document.body).append($(this).val());
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="test">
  <p><input name="name1" value="Z1"></p>
  <p><input name="name2" value="Z2"></p>
  <p><input name="name3" value="Z3"></p>
  <p><input name="name4" value="Z4"></p>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

或者您可以使用选择器0来检索#test input上的所有输入,您可以通过div方法快速访问该输入,就像这样:

.each()

查看此jsFiddle以获取更多信息。

希望它有所帮助。 欢呼声。

答案 2 :(得分:0)

您应该浏览每个library(rgdal) nad83_coords <- data.frame(x=c(577430), y=c(2323270)) # My coordinates in NAD83 coordinates(nad83_coords) <- c('x', 'y') proj4string(nad83_coords)=CRS("+init=EPSG:3531") # West Illinois ## Erroneous code, NAD83 to NAD83 ## coordinates_deg <- spTransform(nad83_coords,CRS("+init=epsg:3436")) ## Corrected with WGS84 to yield Lat/Long coordinates_deg <- spTransform(nad83_coords,CRS("+init=epsg:4326")) coordinates_deg SpatialPoints: x y [1,] -96.57821 42.86485 Coordinate Reference System (CRS) arguments: +init=epsg:4326 +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0 标记,因为它们有其他兄弟,然后在每个函数中找到输入并获取值。

这将有效:

<p>

答案 3 :(得分:0)

function factorialize(num) {

  for(var i = 1; i <= num; i++ ) {
    var fact = i+i;    
    total = fact * fact;
  }
  return total;
}

factorialize(5);

说明:我们有一个 $('#test input').each(function(i,v){ console.log($(this).val()); }); 的选择器,这意味着我们正在'#test input'内直接或传递地搜索所有input。到现在为止还挺好。但是,我们需要他们的#test s,因此,在函数内部我们记录value的结果,它会将值输出到控制台。

答案 4 :(得分:0)

第一个是工作伙伴。我不确定你的问题是什么。

https://jsfiddle.net/tsj0w29x/ $('#test').find('input').each(function () { alert($(this).value); }