【发布时间】:2013-11-12 23:39:25
【问题描述】:
我正在使用带有 C# 后端的 ASP.NET 站点。标签所在的位置有一个.Master页面,填写表格后按Enter键会搜索该站点上的其他搜索页面。但是,我们有一页有几个文本框,当您按 Enter 进行搜索时,它似乎只是刷新并重新加载页面而不进行搜索。为了搜索,您必须点击搜索按钮(这是一个 igtxt:WebImageButton )。到目前为止,我发现的所有解决方案都涉及人们使用 javascript 在提交时调用某种函数。据我所知,当您点击搜索按钮时没有调用 javascript,它全部在 C# 代码中。我再次发现自己在 SO 和其他网站上寻找答案,但似乎没有一个解决方案适合我的情况。表单标签如下:
<form id="form1" runat="server">
网络图像按钮调用运行搜索代码的 btn_SearchClick 函数。但由于表单是在 .Master 文件中启动的,因此我无法对其进行编辑,因为它也会影响所有其他页面。有没有办法让输入从表单中调用 btn_SearchClick 而不必将其放在表单标签中?我不确定发生了什么变化会导致这一行为出现在一个页面上,而其他页面都没有。
【问题讨论】:
-
浏览器在点击 ENTER 时真的很奇怪。我忘记了规则,但这与页面上有多少输入控件有关,它有时会提交您的表单但不单击您的提交按钮 - 在大多数 Web 框架中,这很好,但在 ASP.NET WebForms世界,提交表单但不使用按钮会导致按钮单击处理程序未触发,这就是我确定您的代码所在的位置。我建议找到一些处理 ENTER 键的 javascript,并将其附加到表单上您需要的任何位置。
-
@Justin 你能发布小的可测试代码,以便我们可以复制问题吗?