我有一个表,每行有一个id和几个包含跨度的td
e.g
<tr id="row"><td><span class="first name">myfirstname<span class="surname">mysurname</span></td><td><span class="street">mystreet</span><span class="town">mytown</span></td>
我不想做的是当传递rowid遍历行并创建span类名和span值的键值数组时。
目前我可以单独找到每件事情,这非常麻烦。
答案 0 :(得分:2)
您的标记应该稍微修正一下:
<table>
<tr id="row1">
<td>
<span class="first name">myfirstname </span>
<span class="surname">mysurname</span>
</td>
<td>
<span class="street">mystreet</span>
<span class="town">mytown</span>
</td>
</tr>
</table>
您没有关闭<span>
和<tr>
<强> CODE:强>
function getSpansData(rowId) {
var map = {};
$('#' + rowId + ' span').each(function() {
map[this.className] = this.innerHTML;
});
return map;
}
getSpansData('row1');
答案 1 :(得分:1)
function traverseRow(id) {
var arr = {};
$('td span', 'tr#' + id).each(function() {
arr[this.className] = this.innerHTML;
});
return arr;
}
traverseRow('row');
答案 2 :(得分:0)
您应该发送代码示例以获得更准确的回复。试试这个:
var values = new Object();
$("#row").filter("td span").each(function(){
values[$(this).attr("class")] = $(this).text();
});
alert(values.surname);
答案 3 :(得分:0)
var map = {};
$("#row_id td span").each(function() {
map[$(this).attr("class")] = $(this).html();
});