0

我有一个带有 jquery 搜索表单的网站。我在网站的每个页面的标题中都有搜索框。一旦您在此处输入搜索字词,它就会将您重定向到 search.php 我想要做的是在页面加载后立即提交表单,因为我将数据发送到 search.php 内的搜索框示例:在第 1 页我输入一些东西,然后单击提交。在 search.php 加载和主搜索字段中,我有一些(我之前输入的内容)。但是我必须再次单击提交才能看到结果。知道如何在我被重定向时使表单自动提交吗?所以我可以立即看到结果。这是代码:

<form method="get" id="myForm" name="myForm" >
    <input type="text" name="search" id="search_box" value="<?php $_GET['q']; ?>" placeholder="Enter band, artist, name..." autofocus/>
    <input type="submit" value="Go"  />
    <br />
</form>

和jQuery:

<script type="text/javascript">
    $(function() {
        //-------------- Update Button-----------------
        $(".search_button").click(function() {
            var search_word = $("#search_box").val();
            var dataString = 'search_word='+ search_word;
            if(search_word==''){
            } else {
                $.ajax({
                    type: "GET",
                    url: "searchdata.php",
                    data: dataString,
                    cache: false,
                    beforeSend: function(html) {
                        document.getElementById("insert_search").innerHTML = ''; 
                        $("#flash").show(); 
                        $("#searchword").show();
                        $(".searchword").html(search_word);
                        $("#flash").html('<p style="text-align:center;">Loading Results...</p>');
                    },
                    success: function(html){    
                        $("#insert_search").show();
                        $("#insert_search").append(html);
                        $("#flash").hide();
                    }
                });
            }
            return false;
        });
        //---------------- Delete Button----------------
    });
</script>
4

3 回答 3

0
<form method="get" id="myForm" name="myForm" >
<input type="text" name="search" id="search_box" value="" placeholder="Enter band, artist, name..." autofocus/>
<input id="button-submit" type="submit" value="Go"  />
</form>


    <script type="text/javascript">
    $(function() {
    function _myFunction () {
    var search_word = $("#search_box").val();
    var dataString = 'search_word='+ search_word;
    if(search_word==''){
    } else {
        $.ajax({
            type: "GET",
            url: "searchdata.php",
            data: dataString,
            cache: false,
            beforeSend: function(html) {
                document.getElementById("insert_search").innerHTML = ''; 
                $("#flash").show(); 
                $("#searchword").show();
                $(".searchword").html(search_word);
                $("#flash").html('<p style="text-align:center;">Loading Results...</p>');
            },
            success: function(html){    
                $("#insert_search").show();
                $("#insert_search").append(html);
                $("#flash").hide();
            }
        });
    }
    return false;
}
$("#button-submit").click(function(e) {
    e.preventDefault();
     _myFunction();
    return false;
   });
_myFunction(); //This is where the magic happens
});

</script>

通过这样做,页面将在加载您单击按钮时使用的功能时触发。

于 2013-06-04T21:20:08.740 回答
0
$(function() {
$(".search_button").click(function() {
            var search_word = $("#search_box").val();
            var dataString = 'search_word='+ search_word;
            if(search_word==''){
            } else {
                $.ajax({
                    type: "GET",
                    url: "searchdata.php",
                    data: dataString,
                    cache: false,
                    beforeSend: function(html) {
                        document.getElementById("insert_search").innerHTML = ''; 
                        $("#flash").show(); 
                        $("#searchword").show();
                        $(".searchword").html(search_word);
                        $("#flash").html('<p style="text-align:center;">Loading Results...</p>');
                    },
                    success: function(html){    
                        $("#insert_search").show();
                        $("#insert_search").append(html);
                        $("#flash").hide();
                    }
                });
            }
            return false;
     });
});
$(document).ready(function(){
    $('#myForm').submit();
});

你可以试试这个方法。

于 2013-06-05T07:06:57.957 回答
0
$(function(){
    $('#myForm').trigger('submit');
});

当页面准备好时,您只需使用 jquery 触发提交。

于 2013-06-04T18:27:23.660 回答