我们的页面中有一个搜索文本框和搜索按钮。当用户输入搜索字符串并按回车键时,我们需要触发服务器端按钮单击事件。代码在用户控件(ascx)中。代码是……
ascx
<td class="search_txt_box">
<asp:TextBox ID="txtSearchBox" class="frmdefault" runat="server"
MaxLength="100" Width="300"></asp:TextBox>
</td>
<td class="new_search_btn">
<asp:LinkButton ID="btnSearchHelp" class="ovalbutton" runat="server"
OnClick="btnSearchHelp_Click">
<span id="spanBtnTxt" runat="server" class="btn_arrow_space"></span>
</asp:LinkButton>
</td>
jQuery
(function ($) {
$(function () {
$('input[id$="txtSearchBox"]').keypress(function (e) {
var keyCode;
if (window.event) keyCode = window.event.keyCode;
else if (e) keyCode = e.which;
else return true;
if (keyCode == 13) {
//alert("Out - Clicked");
//alert($('[id*="btnSearchHelp"]').attr('id'));
$('[id*="btnSearchHelp"]').click();
return false;
//$('[id*="btnSearchHelp"]').on('click', 'a', function (e) {
// alert('this is the click');
// e.preventDefault();
//});
}
});
});
} (jQuery));
ascx.cs
protected void btnSearchHelp_Click(object sender, EventArgs e)
{
//handle search click
}
我们尝试在论坛中寻找答案并尝试了一些,但都没有奏效。显示“Out-Clicked”警报和带有按钮动态 id 的下一个警报,但之后没有任何反应。我们编写了一个内联 Jquery 函数,但即使这样也没有被调用。谁能让我们知道我们在这里做错了什么?