我想從.php文件發送parametres到我的Javascript,但我甚至無法管理髮送字符串。我不能發送PHP變量到JavaScript
的JavaScript片段:
var params = "action=getAlbums";
var request = new XMLHttpRequest();
request.open("POST", PHP CODE URL, true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.setRequestHeader("Content-length", params.length);
request.setRequestHeader("Connection", "close");
request.send(params);
request.onreadystatechange = function() {
var phpmessage = request.responseText;
alert(phpmessage);
};
PHP片段:
$deviceFunction = $_POST["action"];
if ($deviceFunction == "") $deviceFunction = $_GET["action"];
// Go to a function depending the action required
switch ($deviceFunction)
{
case "getAlbums":
getAlbumsFromDB();
break;
}
function getAlbumsFromDB()
{
echo "test message!";
}
含phpmessage警報彈出,但它是空的(它實際上出現了兩次)。如果我這樣做,警報將不會工作:
request.onreadystatechange = function() {
if(request.status == 200) {
var phpmessage = request.responseText;
alert(phpmessage);
}
};
當使用Ajax,建議使用像Dojo或jQuery這樣的Javascript庫來完成繁重的工作。 –
現在,有幾件事情可能會出錯。爲了縮小這個問題,我建議改變你的PHP頁面來打印字符串,沒有別的。即:<?php print'test message'; ?> –