我有主页面有一些表单元素,点击提交后。它应该使用$ _POST参数重定向“search.php”页面;
我的代码在下面给出
<form name="form1" id="form1" action="search.php" method="POST"/>
<input type="radio" id="domestic" name="select" value="domestic"/>
<input type="submit" id="search" value="Search"/>
</form>
$(document).ready(function(){
$("#search").click(function(e){
e.preventDefault();
var obj = $('#form1').serialize();
$.ajax({
type:"POST",
url:"search.php",
data:obj,
success:function(data){
alert(obj);
// parent.tb_remove();
window.location.href ="search.php";
} //success
});
});
});
的search.php
echo $_REQUEST['obj'];
ajax提交后,它重定向到search.php页面,但它没有我从客户端发送的帖子值?如何通过参数传递参数从客户端传递到服务器端?
这是一个弹出页面,我正在使用灯箱插件。主页面有弹出窗口,点击搜索后我需要关闭灯箱并用新链接重定向父链接
答案 0 :(得分:0)
您无法发出POST请求并与之相关。如果你真的不想,你应该使用GET请求,并避免使用Ajax部分。
另外,我没有明白你想做什么,因为你真的在“提交”那个表格。提交吧!
答案 1 :(得分:0)
我必须猜测,但有时候我很擅长; - )
1)
var obj = $('#form1').serialize();
如果您的输入元素的名称如“firstname”,“lastname”,则此函数会将其转换为类似的字符串:
"firstname=VALUEOFINPUTHERE&lastname=VALUEOFINPUTHERE"
2)
function(data){
alert(obj);
// parent.tb_remove();
window.location.href ="search.php";
}
警报无法奏效。 obj没有在该函数内定义。使用警报(数据);
3)echo $_REQUEST['obj'];
没有传递给你网页的param obj,obj只是javascript变量的名称,真实数据是(如上所述)firstname=VALUEOFINPUTHERE&lastname=VALUEOFINPUTHERE
因此,您应该尝试print_r($_REQUEST);
或echo $_REQUEST['firstname'];
此致
PS:如果我猜对了,请告诉我。)