使用.each()函数时,JQuery获取输入文本

时间:2012-01-20 18:00:19

标签: javascript jquery

我在列表中使用JQuery .each(),我想知道如何从列表项中的输入字段中检索文本,代码如下:

<ul id="foo">
  <li id="1">
    <input type="text" />
  </li>
  <li id="2">
    <input type="text" />
  </li>
</ul>

然后我需要将id和文本发送到AJAX调用

$(#foo li).each( function() {
  id = this.id; // Works fine
  mytext = ???; // The bit i'm stuck with
  ...
});

每个列表项只有一个输入控件。

3 个答案:

答案 0 :(得分:2)

$('#foo li').each( function() { 
  id = this.id; // Works fine
  mytext =  $(this).find('input[type=text]').val();  
  $('#foo').after('<div> text in input = ' +mytext + '</div>');
}); 

这里有效 http://jsfiddle.net/J8ZUT/1/

答案 1 :(得分:1)

$(#foo li).each( function() {
  id = this.id; // Works fine
  mytext = $(this).find(':input').val(); // <------------
  ...
});

请注意,这也适用于选择和其他“输入”类型,这也只适用于列表元素中只有一个:input的情况。

答案 2 :(得分:1)

mytext = $(this).find('input').val();