如何在单击按钮时输入文本框中的相同功能

时间:2014-01-23 22:34:42

标签: javascript jquery asp.net

我在ASP页面中有以下代码:

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
    <input type="text" id="TextBox1" />
    <input id="Button1" type="button" value="button" />
            <script type = "text/javascript">
        $(document).ready(function () {
            $("#Button1").click(function () {
                var textbox = document.getElementById("TextBox1").value;
                if (textbox.length > 0) {
                    alert("Hello world!");
                    window.location.href = "http://westmedgroup.com/search_results.aspx?searchtext=" + textbox + "&folderid=0&searchfor=all&orderby=title&orderdirection=ascending";
                }
                else {
                    alert("Search query empty");
                }
            });
            $('#TextBox1').keyup(function () {
                var $th = $(this);
                $th.val($th.val().replace(/[^a-zA-Z0-9]/g, ''));
            });
            $('#TextBox1').keypress(function (e) {
                var code = (e.keyCode ? e.keyCode : e.which);
                if (code == 13) {
                    var textbox = document.getElementById("TextBox1").value;
                    if (textbox.length > 0) {
                        window.location.href = "http://westmedgroup.com/search_results.aspx?searchtext=" + textbox + "&folderid=0&searchfor=all&orderby=title&orderdirection=ascending";
                    }
                    else {
                        e.preventDefault();
                    }
                }
            });
        });
    </script> 
</asp:Content>

当我点击按钮时它会按预期执行,如果有文本值则显示警告,然后重定向到搜索结果页面,否则不要重定向并显示搜索查询空警报。 我正在尝试为文本框做同样的事情但我输入的所有内容都有一个文本值,它只是刷新页面而不重定向。 如何修改代码,以便文本框和按钮一起工作。

1 个答案:

答案 0 :(得分:1)

按文本框中的回车提交表单,即使重定向也应该e.preventDefault()。