我正在动态地在表中添加一个select选项标记,同时提交我正在迭代表tr以找到td中的元素。它将select标签作为字符串返回给我。在这里,我无法获得选择标签的选定选项
我的代码是
$('#tableid tbody tr').each(function() {
var countryTag = $(this).find('td:eq(2)').html(); // return the whole select option as string
var selCntry = countryTag.find('option:selected').val(); // this is throwing error.
}
但是在将select标签添加到表时,所选属性不可用于任何选项。
如何获得所有选定的国家/地区
P.S:这篇文章是通过手机发布的。所以可能有任何错字
答案 0 :(得分:2)
请你尝试这样的事情:
$('#tableid tbody tr').each(function() {
var tdObject = $(this).find('td:eq(2)'); //locate the <td> holding select;
var selectObject = tdObject.find("select"); //grab the <select> tag assuming that there will be only single select box within that <td>
var selCntry = selectObject.val(); // get the selected country from current <tr>
});
答案 1 :(得分:1)
那是因为你正在调用函数html()
,你只能在jquery元素上调用find()
使用
$('#tableid tbody tr').each(function() {
var countryTag = $(this).find('td:eq(2)'); // return the whole select option as string
var selCntry = countryTag.find('option:selected').val(); // this is throwing error.
}
或者您可以在单个命令中执行此操作,例如
$('#tableid tbody tr').each(function() {
var value = $(this).find('td:eq(2) options:selected').val(); // return the whole select option as string
}