0

複数の行を持つテーブルがあります。値を持つ入力を含む行 # を返そうとしています。私が間違っていることを理解しています...私のセレクターは、私がいる行ではなく、1行のみを選択しています。 http://jsfiddle.net/silvajeff/4Sb8K/

   <table id="oustandingItems">
    <tr><th>Category</th></tr>
    <tr><td><input name="mytest" /></td></tr>
    <tr><td><input name="mytest" value="123"/></td></tr>
    <tr><td><input name="mytest" /></td></tr>
    <tr><td><input name="mytest" /></td></tr>
   </table>


  <button id="findRow">Find Row</button>
  <input type="text" id="myRow" />

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

1 に答える 1

0

これは正しい解決策になりましたが、間違ったバージョンのjqueryを使用していました。このソリューションは、私がテストした jquery 1.7.2 以降で動作します。

var tableRow = $('#oustandingItems tr:has(td input[value!=""])').prevAll().length;

http://jsfiddle.net/silvajeff/4Sb8K/

于 2013-01-15T05:21:19.277 に答える