Php 如何使用$\u POST通过AJAX和Jquery获得数据?
嗨,我正在尝试使用Ajax和Jquery将简单的html数据传递到php服务器。所以我做了一个非常简单的脚本:Php 如何使用$\u POST通过AJAX和Jquery获得数据?,php,jquery,ajax,Php,Jquery,Ajax,嗨,我正在尝试使用Ajax和Jquery将简单的html数据传递到php服务器。所以我做了一个非常简单的脚本: <script> $("document").ready(function(){ $(".enviarJson").on("click",function(){ var valor = $(this).attr("value"); // alert(valor); $.aja
<script>
$("document").ready(function(){
$(".enviarJson").on("click",function(){
var valor = $(this).attr("value");
// alert(valor);
$.ajax({
type: "POST",
dataType: "HTML",
url: "devolve.php",
data: valor,
success: function(data) {
alert(data);
}
});
return false;
});
});
</script>
$(“文档”).ready(函数(){
$(.enviarJson”)。在(“单击”,函数()上{
var valor=$(此).attr(“值”);
//警惕(勇气);
$.ajax({
类型:“POST”,
数据类型:“HTML”,
url:“devove.php”,
数据:valor,
成功:功能(数据){
警报(数据);
}
});
返回false;
});
});
以下是html:
<form>
<button class="enviarJson" value="q1?a1">Answer 1</button>
<button class="enviarJson" value="q1?a2">Answer 2</button>
</form>
答复1
答复2
现在我的问题是,在不知道$u POST[]的id的情况下,如何将数据传递到devolve.php
例如,使用常规的post表单,我可以执行以下操作:
<form action="devolve.php" method="post">
Name: <input type="text" name="name"><br>
<input type="submit">
</form>
<?php
$name = $_POST['name'];
?>
名称:
然后我可以通过如下操作在devolve.php上获得名称:
<form action="devolve.php" method="post">
Name: <input type="text" name="name"><br>
<input type="submit">
</form>
<?php
$name = $_POST['name'];
?>
您尚未为您的帖子数据命名。它是作为一个裸值出现的,这意味着在$\u POST中PHP没有任何东西可用作键:
data: valor,
^---no name
试一试
这将允许您使用$\u POST['name']
或者,您可以读取原始POST数据:
$name = file_get_contents('php://input');
使用-
如果在页面上有多个表单,则最好为表单提供某种标识。使用jQuery的
.Serialize()
函数序列化表单数据。然后数据将在$\u POST
数组中提供。谢谢,我会尽快接受您的回答。