天天看點

ASP.NET頁面中用javascript響應文本框的回車事件

     很多購物網站的搜尋功能,都是你在文本框中輸入東西後直接回車就跳到搜尋頁了,但是在文本框外按回車是不會響應的,自己看了一下他們的代碼,像中關村商城的是PHP寫的,搜尋就是一個form,裡面一個textbox一個submit按鈕,這樣在textbox中按下回車後會自動的送出到form中的action,自己是用ASP.NET寫的,一個頁面就一個form,自己寫了一個響應文本框中回車的東西出來,自己測試過,IE6,8,FIREFOX,CHROME中浏覽正常,代碼:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test_mulform.aspx.cs" Inherits="test_mulform" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

    <title></title>

    <script type="text/javascript">

        function responseEnter(e) {

            // 響應回車

            var key = window.event ? e.keyCode : e.which;

            if (key == 13) {

                //alert("回車了");

                search();

            }

        }

        function search() {

            // 搜尋

            var key = document.getElementById("key").value;

            if (key.length == 0) {                

                document.getElementById("key").focus(); //無效

                alert("請輸入搜尋關鍵字!");

            } else {

                var url = "SearchItem.aspx?key=" + encodeURI(key) + "&typeid=0&typename=所有分類";

                window.open(url);

    </script>

</head>

<body>

 <form id="form1" runat="server" onsubmit="return false;">

    <input id="key" type="text" onkeypress="responseEnter(event);" />

    <button style="cursor: pointer;" onclick="search();" type="button">

        搜尋

    </button>

    <div><%=DateTime.Now %></div>

 </form>

</body>

</html>