如何按“Enter”重定向到另一个页面?

时间:2014-05-27 02:40:46

标签: javascript php jquery html

我正在研究搜索功能,我做得很好,以获得我想要的结果。我有一个搜索文本字段,可以允许用户键入值,JavaScript将帮助我获取文本字段值的相关数据。现在,当我使用“Enter”按钮按下它时,我希望我的文本字段可以正常工作。按下“Enter”按钮后,它会将我重定向到一个新页面,该页面会在文本字段中显示关键字I键的所有相关数据。

这是我在HTML页面中的JavaScript和HTML代码:

<script>
$(document).ready(function() {  

    // Icon Click Focus
    $('div.icon').click(function(){
        $('input#search').focus();
    });

    // Live Search
    // On Search Submit and Get Results
    function search() {
        var query_value = $('input#search').val();
        $('b#search-string').html(query_value);
        if(query_value !== ''){
            $.ajax({
                type: "POST",
                url: "search.php",
                data: { query: query_value },
                cache: false,
                success: function(html){
                    $("ul#results").html(html);
                }
            });
        }return false;    
    }

    $("input#search").live("keyup", function(e) {
        // Set Timeout
        clearTimeout($.data(this, 'timer'));

        // Set Search String
        var search_string = $(this).val();

        // Do Search
        if (search_string == '') {
            $("ul#results").fadeOut();
            $('h4#results-text').fadeOut();
        }else{
            $("ul#results").fadeIn();
            $('h4#results-text').fadeIn();
            $(this).data('timer', setTimeout(search, 0));
        };
    });

});
</script>

SEARCH<input type="text" id="search" autocomplete="off">
                    <ul id="results" style="display:none"></ul>

在文本内部的keyin值之后,JavaScript将调用search.php来获取所有相关数据。但我无法点击文本字段来显示所有值。希望你的家伙可以给我一个解决方案。谢谢你提前。

2 个答案:

答案 0 :(得分:1)

尝试使用jQuery 1.8或最低版本。

$("input#search").live("keyup", function(e)
        if(e.which == 13) {
            //perform your operations
        }
    });

答案 1 :(得分:1)

您可以将其设为表单,以便在用户点击输入时提交。

<form method="get" action="search page.php" onsubmit="return validate();">
    SEARCH<input type="text" id="search" autocomplete="off">
    <ul id="results" style="display:none"></ul>
</form>

<script type="text/JavaScript">
function validate() {
    //If the form value is "" (nothing)
    if (document.getElementById("search").value == "") {
        return false; //Stop the form from submitting
    }
    return true;
}
</script>