(PHP)如何使输入隐藏数据从输入框中获取值

(PHP)如何使输入隐藏数据从输入框中获取值,php,html,Php,Html,嗨,我试图通过Stack研究我的问题大约3个小时,但我仍然没有发现。 所以我决定创建一个主题来询问我的问题 我正在创建搜索引擎,结果如下: 如果我在输入表单中键入测试文本,然后单击键盘上的“输入”按钮,搜索结果将正常工作 如果我在输入表单中键入测试文本,然后单击网页中的“搜索”按钮,则搜索结果无效 我的问题是结果2。 这是我的代码: <form action="search_content.php" method="POST" > <div class="inpu

嗨,我试图通过Stack研究我的问题大约3个小时,但我仍然没有发现。 所以我决定创建一个主题来询问我的问题

我正在创建搜索引擎,结果如下:

  • 如果我在输入表单中键入测试文本,然后单击键盘上的“输入”按钮,搜索结果将正常工作
  • 如果我在输入表单中键入测试文本,然后单击网页中的“搜索”按钮,则搜索结果无效
  • 我的问题是结果2。

    这是我的代码:

     <form action="search_content.php" method="POST" >  
        <div class="input-group mainsearch-home">           
             <input type="text" class="input-group-field" name="homesearchfield" id="homesearchfield2" placeholder="What are you looking for?" autocomplete="off">
             <div class="input-group-button">
                  <button type="button" class="button button--search" >search</button>              
                  <input type="hidden" name="homesearchfield" value="search">
             </div>
        </div>
     </form>
    

    目前,您的表单不知道该按钮用于提交表单,可以通过更改按钮上的类型来解决此问题:

    <button type="submit" class="button button--search" >search</button>
    
    搜索
    
    您还可以使用:

    <input type="submit" class="button button--search" value="search" />
    

    当前,您的表单不知道该按钮是用来提交表单的,可以通过更改按钮上的类型来修复该问题:

    <button type="submit" class="button button--search" >search</button>
    
    搜索
    
    您还可以使用:

    <input type="submit" class="button button--search" value="search" />
    

    控制数据的一个选项是使用JavaScript/jQuery控制表单的操作。这种方式还允许您在实际发送之前查看发布的数据,您甚至可以对发布内容进行注释,只需使用希望返回的正确数据获取表单即可

    同样,为了使序列化工作,您需要为每个要传回数据的项指定一个名称

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script lang="JavaScript">
    $(function(){
        $("#button").click(fuction()
        {
            var formData = $("#form").serialize();
            alert(formData);
            /*
            $.post({"search_content.php",
                    formData,
                    function(returndata)
                    {
                        //do something
    
                        //this will load the return data into the div tag on the fly
                        $("#divReturn").html(returndata); 
                    },
                    "text"
              });
              //*/
        });
    
    });
    </script>
    <form id="form" onsubmit="return false;" >  
        <div class="input-group mainsearch-home input-group--search inputs--raspberry">         
             <input type="text" class="input-group-field" name="homesearchfield" id="homesearchfield2" placeholder="What are you looking for?" autocomplete="off">
             <div class="input-group-button">
                  <button type="button" class="button button--search" id="button" name="button" value="search" >search</button>              
             </div>
        </div>
    </form>
    <div id="divReturn">
    </div>
    
    
    $(函数(){
    $(“#按钮”)。单击(功能()
    {
    var formData=$(“#form”).serialize();
    警报(formData);
    /*
    $.post({“search\u content.php”,
    formData,
    函数(返回数据)
    {
    //做点什么
    //这将动态地将返回数据加载到div标记中
    $(“#divReturn”).html(returndata);
    },
    “文本”
    });
    //*/
    });
    });
    搜寻
    
    控制数据的一个选项是使用JavaScript/jQuery控制表单的操作。这种方式还允许您在实际发送之前查看发布的数据,您甚至可以对发布内容进行注释,只需使用希望返回的正确数据获取表单即可

    同样,为了使序列化工作,您需要为每个要传回数据的项指定一个名称

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
    <script lang="JavaScript">
    $(function(){
        $("#button").click(fuction()
        {
            var formData = $("#form").serialize();
            alert(formData);
            /*
            $.post({"search_content.php",
                    formData,
                    function(returndata)
                    {
                        //do something
    
                        //this will load the return data into the div tag on the fly
                        $("#divReturn").html(returndata); 
                    },
                    "text"
              });
              //*/
        });
    
    });
    </script>
    <form id="form" onsubmit="return false;" >  
        <div class="input-group mainsearch-home input-group--search inputs--raspberry">         
             <input type="text" class="input-group-field" name="homesearchfield" id="homesearchfield2" placeholder="What are you looking for?" autocomplete="off">
             <div class="input-group-button">
                  <button type="button" class="button button--search" id="button" name="button" value="search" >search</button>              
             </div>
        </div>
    </form>
    <div id="divReturn">
    </div>
    
    
    $(函数(){
    $(“#按钮”)。单击(功能()
    {
    var formData=$(“#form”).serialize();
    警报(formData);
    /*
    $.post({“search\u content.php”,
    formData,
    函数(返回数据)
    {
    //做点什么
    //这将动态地将返回数据加载到div标记中
    $(“#divReturn”).html(returndata);
    },
    “文本”
    });
    //*/
    });
    });
    搜寻
    
    谢谢你的回答,但这对我不起作用。:)谢谢你的回答,但对我不起作用。:)php在哪里?我把php放在这个例子中,如果我以后要显示我的响应页面,对不起,如果它错了。php放在哪里?我把php放在这个例子中,如果我以后要显示我的响应页面,对不起,如果它错了。我是JavaScript/jQuery的新手,你能为我分享url链接来研究这个例子吗?:)我发布的信息可以在stackoverflow.com上轻松找到,对于jquery,api位于。有关于js和jQuery的教程。使用服务器端脚本(php)访问客户端脚本将显著改进您的过程。我是JavaScript/jQuery的新手,您能为我共享url链接以研究此案例吗?:)我发布的信息可以在stackoverflow.com上轻松找到,对于jquery,api位于。有关于js和jQuery的教程。使用服务器端脚本(php)访问客户端脚本将显著改进您的流程。