我有一个网页表单,其中包含日历和提交按钮。单击此“提交”按钮,我需要将所选日期的值传递到另一个页面。我试图使用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;
然而,即使在尝试调试数小时之后,这似乎也无法正常工作。
请让我知道我哪里出错了,哪些需要修改。
提前致谢。
答案 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;它将被处理并保存到数据库中。