jQuery - 从表的最后一行获取输入字段值?

标签 jquery html-table

我对如何做到这一点有点困惑......

我有一个包含一系列行的表格,每个单元格内都有某些表单元素。我试图仅从最后一行的“代码”输入字段中获取值,并且在语法上遇到问题...

简化的表格如下所示:

<table id="table1">
<tr><td><input type="hidden" name="code" value="XFT" /></td></tr>
<tr><td><input type="hidden" name="code" value="ETY" /></td></tr>
<tr><td><input type="hidden" name="code" value="DHQ" /></td></tr>
</table>

而且,这是不起作用的 jquery...

if($('#cont')) {
            $("#cont').live('click', function(event) {
                var tr = $('#wr-viewcarttable tr:last');
                var itemcode = $(tr > 'input[name="code"]').val();
                window.location = "/search?p="+itemcode;
            });
        }

最佳答案

试试这个:

$('table#table1 tr:last input[name=code]').val();

或者,根据您的代码进行调整:

$('#cont').live('click', function(event) {
    var tr = $('#wr-viewcarttable tr:last');
    var itemcode = tr.find('input[name=code]').val();
    window.location = "/search?p="+itemcode;
});

您的代码中有两个错误,$("#cont') 部分中的引号不匹配,并且您的输入搜索错误。您现在拥有的是:

$(tr > 'input[name="code"]').val();

由于 > 位于引号之外,因此它不是字符串,而是比较运算符,现在将 tr'input[name="code “]'。比较运算符始终返回 bool 值(true 或 false),因此您可以有效地执行此操作:

$(true).val();

这没有多大意义。如果您有 jQuery 对象,则可以使用 find 方法查找该对象的任何子级,或者将该元素作为上下文传递给 $() 函数。所以这两个可以工作并且是相等的:

tr.find('input[name=code]').val();
$('input[name=code]', tr).val();

在您的情况下,实际上没有理由将 tr 保存到它自己的变量中,因为您只需一个声明即可获取该值,如上所示。

关于jQuery - 从表的最后一行获取输入字段值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2186049/

相关文章:

html - 用 CSS 覆盖 HTML img

javascript - 使用换行添加动态 html 父级

javascript - 使用 jquery 将客户端表转为 Excel

jquery - 将 HTML Touch 事件添加到 jQuery

javascript - 未应用通过 jQuery 的 CSS

html - 删除 <td> 之间的边框和空格,但保留 <tr> 和 2 列(每列 3 个单元格)之间

html - 自动缩放嵌套表格的 CSS 样式

javascript - 为什么 jQuery slideToggle() 函数在我的表中表现异常?

javascript - 在 IMG 标签中设置从 Cordova 相机插件检索的图像

javascript - 一旦字段处于非事件状态,验证电子邮件