有没有办法在jQuery中获取POST值?
答案 0 :(得分:15)
jQuery用于客户端Javascript。您使用服务器端语言获取POST值。您可以通过将服务器端与客户端混合来提供它们:
<script>
(function() {
var x = "<?php echo ( isset( $_POST['name'] ) && $_POST['name'] != '') ? $_POST['name'] : '';?>";
})();
</script>
答案 1 :(得分:6)
$("form").serializeArray();
答案 2 :(得分:2)
不,你可以使用你的后端在页面上写一些隐藏的字段,或者用数据写出一个javascript脚本标签。
答案 3 :(得分:1)
如果您使用AJAX方法发布,您可以在通过AJAX发布之前发回值或捕获它们。
答案 4 :(得分:1)
在表单元素http://api.jquery.com/serializeArray/上使用serializeArray。
答案 5 :(得分:0)
要从其他网页收听POST值吗?不是我所知道的。但是,您可以通过ajax将POST请求提交到服务器端脚本,并让服务器端脚本返回以前的POST值(例如,如果将它们存储在用户的会话中)。
答案 6 :(得分:0)
POST数据在请求正文中发送,通常采用application / x-www-form-urlencoded格式。
这里的最后一行是你想要的:
POST /path/script.cgi HTTP/1.0
From: office@otb.expert
User-Agent: HTTPTool/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 36
email=office@otb.expert&user+name=we
您可以从PHP访问请求正文$ _POST。如果正文不符合您的预期格式,您可以尝试:
$postdata = file_get_contents("php://input"); $_POST = json_decode($postdata);
从服务器端,您可以在javascript中注入所需的内容:
<script>
var x = "<?php echo ( isset( $_POST['email'] ) ) ? $_POST['email'] : 'we@otb.expert';?>";
</script>
如果您仍然需要将数据从一个页面传输到另一个.html页面并避免使用.php文件,则需要在重定向到下一页之前保存数据,而不是通过读取相同的存储来恢复数据。 / p>
因此,使用您的数据库在页面中导航时保持应用程序状态。