C# 按enter键可在除internet explorer之外的所有其他浏览器上工作

C# 按enter键可在除internet explorer之外的所有其他浏览器上工作,c#,.net,internet-explorer-8,cross-browser,C#,.net,Internet Explorer 8,Cross Browser,在我的default.aspx页面中有以下代码 <%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runa

在我的
default.aspx
页面中有以下代码

<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <div class="default">
        <div class="search_panel">

        <select id="Select1"  name="search_type">
            <option>option1</option>
            <option>option2</option>
        </select><input name="search_text"  type="text" /><input name="search"  formaction="page.aspx" type="image" alt="submit"  src="images/search.jpg" />

            </div>
       </div>
</asp:Content>

选择1
选择2

当用户按下
enter
时,搜索按钮在每个浏览器(firefox、chrome、safari)上都有效,但在IE 8中不起作用。为什么会发生这种情况?

HTML标准中没有规定enter应该提交表单。IE 8不提交表单并不是一个真正的错误;其他浏览器只是擅长猜测enter应该做什么


为了安全起见,应该显式添加代码,让enter键提交表单

尝试在或控件上设置
DefaultButton
属性

例如:

<form id="Form1"
        defaultbutton="search"
        runat="server">


    
        
          
选择1
选择2
          
        
     

keypress
事件添加JavaScript,如果您只想让enter键在聚焦时提交,则在
输入上添加JavaScript;如果您想让enter键始终提交,则在文档上添加JavaScript。或者只需按照Magnus发布的操作即可;当您使用
DefaultButton
属性时,ASP.NET似乎会自动发出此JavaScript。它显示以下错误“Panel1”的DefaultButton必须是类型为的控件的IDIButtonControl@jonnydepp如果可能,将搜索按钮改为asp控件。
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
  <asp:Panel runat="server" DefaultButton="search">
    <div class="default">
        <div class="search_panel">
          <select id="Select1"  name="search_type">
            <option>option1</option>
            <option>option2</option>
          </select>
          <input name="search_text" type="text" />
          <input name="search" id="search" formaction="page.aspx" type="image" alt="submit"  src="images/search.jpg" />
        </div>
     </div>
   </asp:Panel>
</asp:Content>