我有一个由多个表共享的gridview,所以我在后面的代码中动态生成它。我还在每列下创建了一个过滤器。以下是gridview的html代码。
<table id=”GridView1”…>
<tbody>
<tr>
<th>
<span>
Text-Column1
<br/>
<input name=”GridView1$ctl01$txtFilter_Column1” id=”txtFilter_Column1” type=”text” value=”110”/>
<th>
<span>
Text-Column2
<br/>
<input name=”GridView1$ctl01$txtFilter_Column2” id=”txtFilter_Column2” type=”text” />
... 对于每个过滤器,我需要添加一个更改事件,以根据所有过滤器的当前值刷新gridview。以下是我的jquery代码。我的问题是,由于列和相应名称的数量因表格而异,如何更改函数以迭代th并获取列名称和值?
$(myself.get_element()).find("input[id^='txtFilter_']").each(
function () {
var input = $(this);
input.change(
function () {
var filter;
var col1 = input.closest('tr').find('th')[1].innerText.replace(' ', '');
var col2 = input.closest('tr').find('th')[2].innerText.replace(' ', '');
filter = "Column1 LIKE '" + col1 + "%' AND Column2 LIKE '" + col2 + "%'";
$("#hfFilter").val(filter);
$("#btnRefresh").click();
});
}
);
答案 0 :(得分:0)
您可以$('Gridview1 tr').children('th').each(function(){ $(this).text()});
查找所有孩子的价值。