在PHP中,如何在Javascript POST之后获得$\u POST值?
您好,我想问一下如何在Javascript发布之后从HTML打印$POST值 这是我的HTML提交表单:在PHP中,如何在Javascript POST之后获得$\u POST值?,javascript,post,submit,Javascript,Post,Submit,您好,我想问一下如何在Javascript发布之后从HTML打印$POST值 这是我的HTML提交表单: <head> <script src="http://code.jquery.com/jquery-1.9.1.js"></script> <script type="text/javascript" src="./comments.js"></script> </head> <div id="addComment
<head>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script type="text/javascript" src="./comments.js"></script>
</head>
<div id="addCommentContainer">
<form class="add-comment-form" id="addCommentForm3" method="post" action="">
<input type="hidden" value="3" name="comentonpost" id="comentonpost" />
<textarea class="commentinput" name="body" id="body" cols="20" rows="5"></textarea>
<input type="button" class="add-comment-submit" value="Submit" />
</form>
</div>
<div id="addCommentContainer">
<form class="add-comment-form" id="addCommentForm3" method="post" action="">
<input type="hidden" value="3" name="comentonpost" id="comentonpost" />
<textarea class="commentinput" name="body" id="body" cols="20" rows="5"></textarea>
<input type="button" class="add-comment-submit" value="Submit" />
</form>
</div>
这是我的Javascript:$(document).ready(function () {
$(".add-comment-submit").on("click", function (e) {
e.preventDefault();
var submit = $(this);
if (submit.hasClass("working")) return false;
submit.addClass("working");
submit.val("Working...");
$.post('submit.php',$(this).serialize(),function(msg){
submit.removeClass("working");
submit.val("Submit");
$("<div></div>").html(msg).fadeIn("slow").insertBefore(submit.parent($(".addCommentContainer"))).slideDown();
});
});
});
$(文档).ready(函数(){
$(“.add comment submit”)。在(“单击”,函数(e){
e、 预防默认值();
var submit=$(此值);
如果(submit.hasClass(“工作”))返回false;
提交。添加类别(“工作”);
submit.val(“工作…”);
$.post('submit.php',$(this).serialize(),函数(msg){
提交。删除类(“工作”);
提交。val(“提交”);
$(“”).html(msg.fadeIn(“慢”).insertBefore(submit.parent($(“.addCommentContainer”)).slideDown();
});
});
});
这是我的submit.php,它在提交后打印“Hello World”:<?PHP
$message = 'Hello World';
echo $message;
?>
我不知道为什么,但它似乎没有在submit.php上发布信息,或者我在某个地方出错了,因为当我在submit.php中尝试此操作时:
它不会打印在文本区域中键入的名称为“body”的内容。如何使其打印正文输入文本区域中写入的内容?提前谢谢 您正在触发器内部使用
此
,但触发器位于按钮上,而不是窗体上,因此此
引用按钮。这也意味着您正在序列化按钮,而不是表单。请尝试以下POST通话:
$.post('submit.php',$(this).parent().serialize(), ...
编辑:
顺便说一句,通常更好的做法是将触发器添加到表单中,例如,如前所述。您的ID在一个页面中应该是唯一的。。为什么重复同一表单两次?因为我有许多表单必须提交,并且只在提交表单之前发布结果。在您的
submit.php
中,打印了什么($\u post)代码>打印?当我放置$message=print\r($\u POST)时;回声$信息代码>正在打印Array()1
WTF?只需输入print\r($\u POST)代码>,没有别的。它只返回true
,而不是数组的内容。
$.post('submit.php',$(this).parent().serialize(), ...