我想使用javascript / jquery提取表格单元格数据。
表格单元结构:
<select id="id_item_set-0-type" name="item_set-0-type" onchange="get_names_list(this)" required="required">
<option value="">SELECT</option>
<option value="GOLD" selected="selected">GOLD</option>
<option value="SILVER">SILVER</option>
</select>
jquery功能:
$( document ).ready(function() {
var table_id = document.getElementById('item_grid');
var rows_len = table_id.rows.length-2;
for(var i=1; i <= rows_len; i++){
var e = table_id.rows[i].cells[0].firstChild;
alert(table_id.rows[i].cells[0].innerHTML);
var item_type = e.options[e.selectedIndex].text;
}
});
如果我使用table_id.rows[i].cells[0].innerHTML
我得到单元格html但我想获得选定的选项值。
我尝试了e.options[e.selectedIndex].text
,但却抛出错误e.selectedIndex is undefined
。如何获得所选的选项值。?
他们实际上是两个select tags
<select id="id_item_set-0-name" name="item_set-0-name" required="required">
<option value="">SELECT</option>
<option value="1" selected="selected">Name1</option>
<option value="2">name2</option>
..............
</select>
我必须提取两者的选定值。
For example : item_type = "GOLD" and item_name = "name1"
它们可以是我必须迭代的任意数量的行。并且必须获得item_type
和item_name
的值。
答案 0 :(得分:1)
为什么让select标签与表标签混淆?
您只需要:
$('#id_item_set-0-type').find(":selected").text();
将其添加到.ready()
功能中。
如果您的ID是在服务器端动态生成的,如果这是您唯一的select语句,请使用:
$('select').find(":selected").text();
答案 1 :(得分:1)
试试这个:
$( document ).ready(function() {
var selected_val= $('#"id_item_set-0-type :selected"').val();
var selected_text=$('#"id_item_set-0-type :selected"').text();
}