从一段html中获取所有输入元素值

时间:2013-04-12 10:58:37

标签: jquery

我有一个像这样的HTML

    <tbody>
    <tr>
        <td >
            <img src="" alt="close" />
        </td>
        <td>
        <input type="hidden" name="addproducts" value="141420">141420
        </td>
        <td class="prd">
            <strong>
                <a href=""></a>
            </strong>
        </td>
        <td>
            <a rel="prettyPhoto" href=""><img src="" alt="Product"></a>
        </td> 
    </tr>
    <tr>
        <td >
            <img src="" alt="close" />
        </td>
        <td>
        <input type="hidden" name="addproducts" value="1213143">1213143
        </td>
        <td class="prd">
            <strong>
                <a href=""></a>
            </strong>
        </td>
        <td>
            <a rel="prettyPhoto" href=""><img src="" alt="Product"></a>
        </td> 
    </tr>
    <tr>
        <td >
            <img src="" alt="close" />
        </td>
        <td>
        <input type="hidden" name="addproducts" value="242424">242424
        </td>
        <td class="prd">
            <strong>
                <a href=""></a>
            </strong>
        </td>
        <td>
            <a rel="prettyPhoto" href=""><img src="" alt="Product"></a>
        </td> 
    </tr>
</tbody>

我正在尝试将名称为“addproducts”的所有“隐藏”“输入”的值添加到字符串中。我尝试了一些代码如下(此代码基于我的完整html,我不能把它这里因为大小和其他问题。如果我得到解决这个问题的逻辑,我可以自己照顾这个。)

  var txt=    $(this).parent().parent().find(".antal").find("input:hidden[name='addproducts']").each(function () {
           $(this).val() 
        });
    alert(txt);

但这只是一个对象提醒。任何人都可以帮我解决这个问题。

3 个答案:

答案 0 :(得分:3)

您可以使用map(),您可以根据需要更改选择器。您的html中几乎没有修复,例如关闭inputimage标记。

<强> Live Demo

str = $('[name=addproducts]').map(function(){
    return this.value;
}).get().join(',');

答案 1 :(得分:2)

如果您希望获得由所有连接值组成的文本,您可以这样做:

var txt= $(this).parent().parent().find(".antal")
    .find("input:hidden[name='addproducts']").map(function () {
       return this.value
}).get().join('')

答案 2 :(得分:0)

尝试类似FIDDLE

的内容
    $(function(){
        var my_txt = [];
        $("input:hidden[name='addproducts']").each(function () {
            my_txt.push($(this).val());       
        });
        alert(my_txt.toString());
    });

已编辑的代码