我的页面顶部有几个ImageButtons,然后我在中间有一个文本框和按钮。如果您键入文本框,然后按键盘上的Enter键,浏览器将跟随第一个ImageButton的链接,而不是文本框旁边的提交按钮。我已经遇到了这个问题,并且必须将图像按钮放在页面底部才能正常工作,在这种情况下这不是一个好的解决方法。我尝试设置UseSubmitBehavior =“true”,但这没有任何作用。我尝试将文本框和按钮放在单独的DIV和单独的面板中,无法正常工作
页面顶部
<div style="position:absolute; left: 70% ; top: 5%;">
<asp:ImageButton ID="imgFB" runat="server" ImageUrl="Images/facebook_icon.jpg" PostBackUrl="http://www.facebook.com/832586561" />
<asp:ImageButton ID="imgLI" runat="server" ImageUrl="Images/linkedin_logo.jpg" PostBackUrl="http://www.linkedin.com/pub/scott-selby/33/304/44a" />
<asp:ImageButton ID="imgCB" runat="server" ImageUrl="Images/careerbuilder_logo.jpg" PostBackUrl="http://www.careerbuilder.com" />
<asp:ImageButton ID="imgCP" runat="server" ImageUrl="Images/codeplex_logo.jpg" PostBackUrl="http://www.codeplex.com" />
</div>
页面中间
<div ID="formPanel" runat="server" style="position:absolute; top:235px;">
<asp:TextBox ID="txtNewCity" runat="server"></asp:TextBox>
<asp:Button ID="btnChangeCity" runat="server" Text="Change City" UseSubmitBehavior="true" />
</div>
答案 0 :(得分:2)
您可以通过<form/>
属性设置默认按钮。
<form defaultbutton="btnChangeCity" id="form1" runat="server">
...
</form>
或使用Panel控件设置默认按钮。
<asp:Panel ID="Panel1" runat="server" DefaultButton="btnChangeCity">
<asp:TextBox ID="txtNewCity" runat="server"></asp:TextBox>
<asp:Button ID="btnChangeCity" runat="server" Text="Change City" />
</asp:Panel>
答案 1 :(得分:0)
您使用<div>
围绕控件,这是一个好主意,但要让它完全运行,您还需要<form>
。如果您没有包含它,则提交按钮也必须具有OnClick="sub"
属性。
了解更多here。