我正在尝试将数据从ajax发送到php,但php并没有显示它。两个脚本都在同一个站点上:" testpage.php"。
的jQuery / AJAX:
<script src="http://code.jquery.com/jquery-latest.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$("#button").click(function() {
var test = "bla";
$.ajax({
url: "testpage.php",
type: "post",
data: test,
success: function (response) {
alert("test ok");
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
});
});
</script>
PHP:
<?php
if(isset($_POST["test"])) {
$test2 = $_POST;
echo $test2;
echo "Test";
}
?>
我没有看到PHP的结果
答案 0 :(得分:0)
如果您要执行data: {test:sometext}
请求,则需要使用POST
。
答案 1 :(得分:0)
PHP无法在帖子中看到值,因为您只在PHP正文中发送bla
。您必须发送test=bla
。但是jQuery可以通过发送data : { test : test }
来自动完成。
$(document).ready(function() {
$("#button").click(function() {
var test = "bla";
$.ajax({
url: "testpage.php",
type: "post",
data: {
test : test
},
success: function (response) {
alert("test ok");
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
});
});
答案 2 :(得分:0)
使用data: {test:test},
&amp;提醒您的回复以查看结果。
success: function (response) {
alert(response);
},
或只是append
您对html
的回复。
答案 3 :(得分:0)
您可以在$ .ajax();
中使用serialize()方法类似的东西:
$.ajax({
url: "testpage.php",
type: "post",
data: $("#myForm input").serialize(),
success: function (response) {
alert("test ok");
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(textStatus, errorThrown);
}
});
然后尝试按表单输入名称访问您的帖子数据。
答案 4 :(得分:-1)
var data = {
'test': "bla",
};
$.ajax({
type: "POST",
url: "testpage.php",
data: data,
dataType: "json"
}).done(function(response){
console.log(response);
}).fail(function(response){
console.log(response);
});