php が JS に配列を返す際の問題
php 側のloadmenu.php
$page = $_POST ["ページ"];
$xml = simplexml_load_file('menu.xml');
$root=$xml->$page;
$arrJson=array();
$arrJson["key"]=$root->attributes()->key;// メニューの名前を取得します KEY
echo json_encode($arrJson);
?>
JS側
関数 process_menu()
{
var url = "loadmenu.php" ;
var params = {'page':nowweb};
$.post(url,params,function(data){menu_back(data);});
}
関数 menu_back(応答)
{
アラート(応答);
}
ポップアップする最後のメッセージは次のとおりです: {"key":{"0":"u8868u5355u7ba1u7406}}
なぜ {"キー":"メニュー名"} ではないのでしょうか?
php
-----解決策---------
function process_menu()
{
var url = "loadmenu.php" ;
var params = {'page':nowweb};
$.post(url,params,function(data){menu_back(data);});
}
$.ajax({
入力: "POST"、
URL: URL、
データ: params ,
データ型: ジェイソン、
成功: function(response){
menu_back(応答);
}
});
関数 menu_back(応答)
{
アラート(応答);
}
-----解決策----------------------------
関数 process_menu()
{
var url = "loadmenu.php" ;
var params = {'page':nowweb};
$.ajax({
入力: "POST"、
URL: URL、
データ: params ,
データ型: ジェイソン、
成功: function(response){
menu_back(応答);
}
});
関数 menu_back(応答)
{
アラート(応答);
}
-----解決策---------
関数 process_menu()
{
var url = "loadmenu.php" ;
var params = {'page':nowweb};
$.post(url,params,function(data){menu_back(data);});
}
$.ajax({
入力: "POST"、
URL: URL、
データ: params ,
データ型: json、
成功: function(response){
menu_back(応答);
}
});
関数 menu_back(応答)
{
アラート(応答);
}
-----解決策---------
dataType: jason,
データ型:
json
、
応答は文字列です。 。 json オブジェクトではありません
------解決策---------
私が不思議に思うのは次のとおりです:
1. $root->attributes()->key はエラーを報告しませんか?
2. ポップアップ情報は次のとおりです: {"key":{
"0"
:"u8868u5355u7ba1u7406}}
この0はどこから来たのでしょうか?
menu.xml のフラグメントを投稿してテストしたほうがよいでしょう
-----解決策---------