好的,所以我用JS创建了一个链接:
var content = document.getElementById("Profile");
var entry = document.createElement('li');
entry.innerHTML= ' <a href="eventList2.html" onclick ="post()"> Click Me </a>';
content.appendChild(entry);
function post(){
$.post( "random.php", { variable: "hello"} );
}
在我的 PHP 中:
随机.php
<?php
Header("content-type: application/x-javascript");
error_reporting(E_ERROR | E_WARNING | E_PARSE);
$variable = $_POST['variable'];
echo"alert($variable);";
?>
"未定义"得到回声而不是"hello"。谁能告诉我我做错了什么?我对 AJAX 和 Jquery 不太熟悉,我只是按照我在教程和示例中看到的任何内容进行操作。谢谢
为什么 PHP 会返回警报?这是一个糟糕的方法。让 PHP 返回 json 编码的结果,并让 jquery 处理警报。这是实现此目的的一种可能方法:
$.post( "random.php", { variable: "hello"}, function(data) {
alert(data);
});
.PHP:
<?php
Header("content-type: application/x-javascript");
error_reporting(E_ERROR | E_WARNING | E_PARSE);
$variable = $_POST['variable'];
echo json_encode($variable);
?>
更改:
echo"alert($variable);";
自:
$js = json_encode($variable);
echo "alert($js);";
这会将$variable
的内容转换为 Javscript 文本的正确格式。