ユーザーコントロール(my.ascx)をWebページ(1.aspx)に配置しました。my.ascxには、gridview、検索テキストボックス、検索ボタンが含まれています。検索ボタンのクリックイベントで検索テキストボックスに入力しているテキストに基づいて、グリッドビューに行を表示する必要があります。これが私がしたことです。
1.aspxの場合:
<script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$('#lblNoRecords').css('display','none');
$('#btnSubmit').click(function(e)
{
// Hide No records to display label.
$('#lblNoRecords').css('display','none');
//Hide all the rows.
$("#GridView1 tr:has(td)").hide();
var iCounter = 0;
//Get the search box value
var sSearchTerm = $('#txtSearch').val();
//if nothing is entered then show all the rows.
if(sSearchTerm.length == 0)
{
$("#GridView1 tr:has(td)").show();
return false;
}
//Iterate through all the td.
$("#GridView1 tr:has(td)").children().each(function()
{
var cellText = $(this).text().toLowerCase();
//Check if data matches
if(cellText.indexOf(sSearchTerm.toLowerCase()) >= 0)
{
$(this).parent().show();
iCounter++;
return true;
}
});
if(iCounter == 0)
{
$('#lblNoRecords').css('display','');
}
e.preventDefault();
})
})
</script>
my.ascx:
<asp:TextBox ID="txtSearch" runat="server" ClientIDMode="Static"
meta:resourcekey="txtSearchResource1"></asp:TextBox>
<asp:Button ID="btnSubmit" runat="server" ClientIDMode="Static" CssClass ="ButtonNormal" Text="Search"
meta:resourcekey="btnSubmitResource1" />
<asp:Label ID="lblNoRecords" runat="server" ClientIDMode="Static"
meta:resourcekey="lblNoRecordsResource1"></asp:Label>
<gridview ..........
......
しかし、btnSubmitを押しても何も起こりません。助けてください。