---------------------------------------------------- -
パブリック関数ajax(){
// var_dump($_POST );die
$data=array();
$data['content']=$_POST['content '];
$data['time']=time() ;
$data['timee']=date('Y-m-d H:i:s',time()); "aaa";
$dd=M(msg)->data($data)->add();
$dataa=M('msg')->order(' id desc')->limit('5')-> ;select();//ここで 5 つのデータ レコードを取得できます
$this->ajaxReturn($dataa);
}
}
var dat= eval("(" + msg + ")"); //この文を使用すると、以下が実行できなくなります。 thinkphp3.1.2でやってみました
ディスカッションに返信(解決策)
msgがjson形式のデータであることを確認してください
alert(msg) take a lookpop up [object Object],[object Object],[object Object],[object Object],[object Object] を表示するには
public function ajax(){
// var_dump($_POST);die; $data=array();
$Model = 新しいモデル();
$data['time']=time(); 'timee'] =date('Y-m-d H:i:s',time());$dataa=M('msg')->order('id desc')->limit('5')->select(); //ここでは
$this->ajaxReturn($dataa);
/// $dataa の型は 5 つのデータ レコードから取得できます。これはすでに配列です。フロントエンドは、EVAL を使用せずに、alert(msg.your data key value) を直接使用できます。
//または配列を json 文字列に変換します
$this->ajaxReturn(json_encode($dataa));//この方法では、reurn は json 文字列であり、フロントエンドはそれを EVAL で解析する必要がありますまたは他の JSON 解析方法。
}
}
thinkphp の json 変換を使用している場合、jquery で投稿するときに、返される json パラメーターのタイプを指定します
alert(msg) の場合
ポップアップに [object Object],[object Object が表示されます] ,[object Object],[object Object],[object Object]
は、msg がすでに解析された js 配列であることを意味します。 json パラメータがない場合、$.post はそれ自体を解析しないため、明らかに実際のコードを提供していません
msg が解析されているため、
var dat=eval("(" + msg + ")");
それは間違いです
返されたデータはすでに json であるため、評価する必要はありません。
var dat=eval("(" + msg + ")");
var dat=msg; に変更します。
返される形式が json であることを宣言するには、関数の後に「json」を追加する必要があります