2015-10-30 3 views
0

У меня есть HTML-таблица, называемые #DimensionAttributes, столбцы которой являются следующим:Получение значения элемента ввода внутри TR таблицы

<td><input type="text" name="txtLEName" value="@attribute.Key" /></td> 

Я намеренно хотел сохранить имя входного элемента статического. В этой таблице может быть несколько строк. Как я прокручиваю каждую строку и узнаю значение входных элементов с помощью идентификатора. Причина, по которой я хотел использовать идентификатор, заключается в том, что в этой таблице может быть несколько столбцов. Пожалуйста, помогите

ответ

0

Используйте селектор, возможно:

$("input[name='txtLEName']") 
0

Ну, во-первых все, идентификатор должен быть уникальным, а не используется класс. Или, если вы охотно хотели использовать ID, попробуйте выбрать этим:

Предположим, у вас есть это два элемента с таким же именем ID:

<td><input type="text" name="txtLEName" value="@attribute.Key" id="hello"/></td> 
<td><input type="text" name="txtLEName" value="@attribute.Key" id="hello"/></td> 

Затем должен быть ваш селектор:

$('[id="hello"]') 

Or другим способом, если вы хотите увеличить идентификационное имя:

<td><input type="text" name="txtLEName" value="@attribute.Key" id="hello1"/></td> 
<td><input type="text" name="txtLEName" value="@attribute.Key" id="hello2"/></td> 

Как вы не знаете, как ma пу элемента, так как элемент создается динамически, то вы можете выбрать его с помощью этого:

$('[id^="hello"]') // find the element ID name start with `hello` 
+0

Это даст только первый, а не второй? – guradio

+0

@Pekka Оба возвращаются –

+0

Я бы по-прежнему предпочел не давать ему предложение о сохранении одного и того же идентификатора, используя класс, который возможен в этой проблеме. Просто используйте ближайший tr – guradio

0

Если вы хотите, чтобы цикл через каждый ряд, почему бы не написать что-то вроде этого:

$("#DimensionAttributes tr input[name='txtLEName']").each(function(){ 
    //Your code here: 
    //$(this).val() 
}); 
0
var $rows = $('#table').find("tr:not(:eq(0))"); 
$rows.each(function() { 
    var $tds = $(this).find('td'); 
    var val = $tds.find(':text').val(); 
    console.log(val); 



}) 

Предполагая, что у вас есть 1 входной текст в каждой строке, вы можете выбрать идентификатор таблицы, найти tr и выполнить итерацию и найти td со входом и получить значение

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