2016-08-07 17 views
1

私はユーザから価値を得てデータベースに保存するフォームを持っています。 フォームを送信すると、ajax呼び出しを使用してaction.phpファイルが呼び出されます。ajaxを使ってPHPの戻り値を取得する

e.preventDefault(); 

$.ajax({ 

    type: "POST", 
    url: "action.php", 
    data: senData, 
    dataType: "JSON", 

    success: function(data) { 

     $("#name").val(""); 
     $('.msg').fadeIn(500); 
     $('.msg').text("" + data.result + ""); 

    } 

}); 

値がエラーなしデータベースに格納されているが、私はMSGのdiv内のフォームを送信した後、ユーザーに通知を表示したいです。

私のaction.phpファイルには、JSON Encodeという文も追加されました。これもメッセージを返します。

$msg = 'Thanks Yo Yo'; 
echo json_encode(array("result" => $msg)); 

しかし、それは私がフォームを送信するとき、それはデータベースにデータを格納し、Webページは.msg divの内側の任意のメッセージを表示せずに自分自身をリフレッシュする、すなわち作業されていません。

私は間違ったことをしていますか、それを行う良い方法がありますか?

+0

あなたのページは更新されません。右 ? – jaysingkar

+0

あなたはajax呼び出しを行っているあなたの完全な機能を投稿できますか? – jaysingkar

+0

あなたのHTMLコードも提出してください –

答えて

1

JSONがJavaScriptに返されたときに解析する必要があります。

// Parse the response to JSON 
var res = JSON.Parse(data); 
$('.msg').text(res.result); 

コードは次のようになります。

e.preventDefault(); 

$.ajax({ 
type: "POST", 
url: "action.php", 
data: senData, 
dataType: "JSON", 

success: function(data) { 
    var res = JSON.Parse(data); 
    $("#name").val(""); 
    $('.msg').fadeIn(500).text(res.result); 

} 

}); 
関連する問題