2013-03-20 2 views
0

У меня есть таблица, которая выглядит примерно такКак получить значение выпадающего списка для выбранной строки?

<table id="grid" class="table table-bordered table-hover table-inline"> 
    <thead> 
     <tr> 
      <th>Id</th> 
      <th>Dropdown List</th> 
      <th><input id="selectAll" type="checkbox" /></th> 
     </tr> 
    </thead> 
    <tbody data-bind="foreach: stuff 
     <tr> 
      <td data-bind="text: someId"></td> 
      <td> 
       <select class="input-medium" data-bind="options: someStuff, optionsText:'DisplayName', optionsValue:'StandardCode'"></select>       
      </td> 
      <td> 
       <input type="checkbox" data-bind="value: someId"/> 
      </td> 
     </tr> 
    </tbody> 
</table> 

, а затем Im мой JavaScript я итерация через выбранные строки как этого

$('grid input[type="checkbox"]:checked').each(function() { 

    var someSelectedId= $(this).val(); 

    var dropDownlistValue= ??  
}); 

Я использую нокаут, чтобы связать мои данные в таблицу и падение.

Когда я повторяю строки, как получить выбранное значение в выпадающем списке для каждой строки, когда я повторяю их? Для моей жизни я не могу понять это. Благодаря!

ответ

2

Использование:

var dropDownlistValue = $(this).parent().prev().find('select.input-medium').val(); 
+1

Работал как очарование! благодаря! –

2

Или ... Метод

$(this).closest("tr").find("select.input-medium").val(); 

для AV является, вероятно, быстрее, но идти к TR обеспечивает большую гибкость, так как это будет найти выбор независимо от того, где в строке это.

Смежные вопросы