javascript - 如何使用 JQuery 从 <tr> 元素内的所有输入元素获取值

标签 javascript jquery html

如何在我的表单中获取一行中的所有输入元素? 例如,在下面的代码片段中,我有一个复选框和一个文本输入框。我想获取这两种输入类型的值,并在包含 div id="hist"元素的下一个 td 元素中将它们显示给用户。

   <tr><td>Head</td>
            <td><input type="text" name="headH" id="headH" ></td>
            <td><input class="NA" type="checkbox" name="headNA" id="headNA" value="N/A"></td>
            <td><div class="hist"></div><%=Utils.getMeasurementsCreateDiv1("Head","H",num) %>
            </td></tr>
        <tr><td>Neck</td>
            <td><input type="text" name="neckH" id="neckH" ></td>
            <td><input class="NA" type="checkbox" name="neckNA" id="neckNA" value="N/A"></td>
            <td><div class="hist"></div><%=Utils.getMeasurementsCreateDiv1("Neck","H",num) %></td>
        </tr>
        <tr><td>UE</td>
            <td><input type="text"name="uEH" id="uEH"></td>
            <td><input class="NA" type="checkbox" name="ueNA" id="ueNA" value="N/A"></td>
            <td><div class="hist"></div><%=Utils.getMeasurementsCreateDiv1("UExt","H",num) %></td>

我还有一个 5 个单选按钮和一个文本输入框。这些都不在同一行,但我想获取“pain1”元素和“cerCommentH”元素的值并显示它。请注意,以下只是一个代码片段。我的表单中有几个这样的元素,所以我无法使用它们的“id”单独处理它们。

   <tr>
            <td>Mech</td>
            <td>
                <input type="radio" name="pain1" value="Pain a">Pain a
                <input type="radio" name="pain1" value="Pain b">Pain b

            </td></tr>  
            <tr><td></td>
            <td>
                <input type="radio" name="pain1" value="Pain c">Pain c  
                <input type="radio" name="pain1" value="Pain d">Pain d
                <input type="radio" name="pain1" style="display:none;" value="">
                <input type="button" value="Clear" onclick="document.history.pain1l[4].checked = true;">
        </td>
        <td><div class="hist"></div><%=Utils.getMeasurementsCreateDiv1("Cehi","H",num) %></td>
        </tr>
        <tr>
            <td></td>
            <td><input type="radio" name="pain1" value="Other">Other
                <input type="text" name="cerCommentH" id="cerCommentH">
            </td>
            <td></td>
            <td></td>
        </tr>

预先感谢您的帮助。

最佳答案

假设你想对每个人做一些事情:

$('tr:has(input)').each(function() {
   var row = this;
   var values = "";
   $('input', this).each(function() {
      values =  values + "," + $(this).val() 
   });
   values = "<div>(" + values.substring(1) + ")</div>";

   $('.hist', row).html(values); 
});

关于javascript - 如何使用 JQuery 从 <tr> 元素内的所有输入元素获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10998806/

相关文章:

javascript - 访问通过 wrap 函数添加的父项

javascript - JQuery 数据表不按隐藏值搜索

html - CSS 显示 :Inline-Block Pairs

javascript - jQuery 在带有图像映射的悬停时显示 div

javascript - 将选择保留在文本区域中

javascript - 以父组件内对象的形式从所有子组件获取合并数据 : React JS

javascript - OnSubmit Javascript 不覆盖提交操作

javascript - 更改 body.innerHTML 后事件处理程序卡住

javascript - 引用外部选项值或函数

html - CSS:图像标题具有固定高度