无法使用jquery将变量从html传递到php页面

时间:2014-09-11 19:58:25

标签: php jquery

我有一个网页表单,其中包含日历和提交按钮。单击此“提交”按钮,我需要将所选日期的值传递到另一个页面。我试图使用jquery实现这一点。但它似乎没有起作用。

我没有在表单中使用Post方法,因为我将在此页面中有多个提交按钮。

我的第一页是form.php

代码

<html>
<head>
    <script language="javascript" type="text/javascript" src="javascript/datetimepicker.js"></script>
    <script type="text/javascript" src="javascript/jquery-1.11.1.js"></script>
    <script> 
        $(document).ready(function(){

                $('#submit').on("click", function(e){               
                var datevalue = $('#selecttime').val();
                $.ajax({
                    type: "POST",
                    url: "displayer.php",
                    data: "value="+datevalue,

                    success: function(data) {
                            window.location.href = "displayer.php";
                    }
                });

            });
    </script>
</head>
    <body>
        <form action="" method="post">
            <label for="datetime" >Select date and time:</label>
            <input type="text"  name = "selecttime" id="selecttime" size="30"/> <a href="javascript:NewCal('selecttime','ddmmyyyy',true)"><img src="images/cal.gif" width="16" height="16" border="0" alt="Pick a date"></a>
            <input type="submit" name="submit" id="submit" />
        </form>
    </body>
</html>

在第二页中,displayer.php我只想显示从第一页传递的日期和时间值,然后继续进一步处理。

$get_time = S_POST[value];
echo $get_time;

然而,即使在尝试调试数小时之后,这似乎也无法正常工作。

请让我知道我哪里出错了,哪些需要修改。

提前致谢。

2 个答案:

答案 0 :(得分:0)

您正在将AJAX与回发/整页刷新混合。

目前,您的代码向displayer.php发出AJAX请求,对返回的数据不执行任何操作,然后重定向到displayer.php(无法实现AJAX的目的)。当您重定向时,displayer.php不记得您发布的值。

尝试类似:

<body>
    <form action="displayer.php" method="post">
        <label for="datetime" >Select date and time:</label>
        <input type="text"  name = "selecttime" id="selecttime" size="30"/> <a href="javascript:NewCal('selecttime','ddmmyyyy',true)"><img src="images/cal.gif" width="16" height="16" border="0" alt="Pick a date"></a>
        <input type="submit" name="submit" id="submit" />
    </form>
</body>

将发布到displayer.php并立即加载页面。

完全摆脱点击处理程序

答案 1 :(得分:0)

我没有使用动作=&#34; displayer.php&#34;在表单标签中,因为我将在同一页面上有多个按钮。每次单击按钮都必须执行不同的功能。

如果上面的代码是错误的实现方式,请告诉我如何解决这个问题。基本上我需要将文本框的值传递给下一页&#39; displayer.php&#39;它将被处理并保存到数据库中。