用jquery循环元素?

时间:2010-01-24 16:10:12

标签: jquery

我从来没有通过jquery循环使用元素,在一些帮助下会很棒。

我的DOM看起来像:

<div class="section">

    <div class="group">
        <div class="comment">
            <input class="comment" type="text" />
            <br />
        </div>
        <div class="link">
            <input class="link" type="text" />
            <input class="link" type="text" />
            <br />
        </div>
    </div>

    <div class="group">
        <div class="comment">
            <input class="comment" type="text" />
            <input class="comment" type="text" />
            <br />
        </div>
        <div class="link">
            <input class="link" type="text" />
            <br />
        </div>
    </div>

</div>

如何编写代码以获取文本输入字段中的所有值(class = comment和class = link)。会有很多组具有不同数量的文本输入字段。

谢谢!

5 个答案:

答案 0 :(得分:24)

$(":input.comment, :input.link").each(function() {
    alert($(this).val()); // or this.val
});

请参阅:

答案 1 :(得分:5)

这将选择具有注释或链接类别的所有元素,并提醒其值。

$(".comment, .link").each(function() {
    alert($(this).val());
});

或者,您可以选择输入类型:

$("input[type='text']").each(function() {
    alert($(this).val());
});

答案 2 :(得分:1)

回答这个问题。

onload的第一行:我们需要循环使用每个循环。 循环文本字段的第二行,假设您需要循环一个不同的输入类型 - 只需替换它 第三行 - 确保它不是空白 第四行 - 将是您的业务逻辑(在这种情况下,我试图解析输入文本字段。)

看到这个小提琴:http://jsfiddle.net/5FVtR/86/

$( document ).ready(function() {
    $(":text").each(function() {
        if($(this).val() !='') {
            $(this).val()=parseFloat($(this).val()).toFixed(2)
            return false;
        }
    });

答案 3 :(得分:0)

尝试:

$(":input.comment, :input.link", "div.group").each(function() {
    alert($(this).val());
});

答案 4 :(得分:0)

以下语法对我来说更清楚(虽然它在功能上等同于其他答案):

var elementList = $(":input.comment, :input.link");
$.each(elementList, function(i, input){
    alert($(input).val());
});