jquery无法从输入元素中获取值(2)

我正在使用jquery尝试检索文本输入的值,但它无法正常工作。 谁能看到我做错了什么? http://jsfiddle.net/silvajeff/4Sb8K/3/

Category
$("#findRow").click(function() { var tableRow = $('#oustandingItems tr:has(td input[value!=""])').prevAll().length; var myValue = $('#oustandingItems input:has(td input[value!=""])').val(); $("#myRow").val(myValue); });

您可以将选择器简化为#oustandingItems tr input[value!=""]

 $("#findRow").click(function() { var myValue = $('#oustandingItems tr input[value!=""]').val(); $("#myRow").val(myValue); }); 

的jsfiddle

你可以尝试这个: http : //jsfiddle.net/4Sb8K/6/

 $("#findRow").click(function() { var myValue = $('#oustandingItems').find('input[value!=""]').val(); $("#myRow").val(myValue); }); 

用于查找带有值的输入框的选择器是错误的。

 - var myValue = $('#oustandingItems input:has(td input[value!=""])').val(); + var myValue = $('#oustandingItems input[value!=""]').val(); 

BTW,.val()方法只返回第一个元素的值,如果您的选择器匹配多个元素。 如果需要遍历所有元素,请使用.each()方法。