【发布时间】:2011-08-17 12:50:04
【问题描述】:
我有这个关于在 jQuery 中检索行数据的问题。这对我来说并不是一个简单的问题,因为我的表格单元格包含一个select 标签和一个输入框。为了清楚起见,这是我的表格的 html 代码:
<tr>
<td>
<select style="width:5em;" class="field">
<option></option>
<option>name</option>
<option>age</option>
<option>sex</option>
</select>
</td>
<td>
<select style="width:5em;" class = "comp">
<option></option>
<option>equals</option>
<option>starts with</option>
<option>not equal to</option>
</select>
</td>
<td><input type="text" class = 'value'></td>
</tr>
<tr>
<td>
<select style="width:5em;" class="field">
<option></option>
<option>name</option>
<option>age</option>
<option>sex</option>
</select>
</td>
<td>
<select style="width:5em;" class = "comp">
<option></option>
<option>equals</option>
<option>starts with</option>
<option>not equal to</option>
</select>
</td>
<td><input type="text" class = 'value'></td>
</tr>
<tr>
<td>
<select style="width:5em;" class="field">
<option></option>
<option>name</option>
<option>age</option>
<option>sex</option>
</select>
</td>
<td>
<select style="width:5em;" class = "comp">
<option></option>
<option>equals</option>
<option>starts with</option>
<option>not equal to</option>
</select>
</td>
<td><input type="text" class = 'value'></td>
</tr>
</table>
<input type="button" value = "go" id="out">
这是我的 Javascript 代码:
$('#out').click(function(){
var tr = 1;
$('table tr').each(function(){
var td = 1;
$(this).find('td').each(function(){
alert(JSON.stringify($(this).text()));
td++;
});
tr++;
});
})
我想要做的是我想获取表中的所有行数据,但是每次单击按钮时,它都不会显示正确的输出。 我也试过这个:
$(this).children($(".field option:selected").text())
获取所选选项的值,但还是不行。
DEMO 在这里。请帮忙....
【问题讨论】:
-
.text 只是获取单元格的文本内容,而不是字段的内容
-
如果您在 JS 中需要它,您是否需要逐行获取过滤器数据?我可以帮助您:)
-
@Marwan,是的,我需要得到过滤器.. 谢谢你的回复
标签: javascript jquery html-table data-retrieval