0

投稿データを saveworld.php に送信し、そのページで何らかの結果を取得しています。現在のページでそのデータを使用したいのですが、saveworld.php の DOM 全体を取得していますが、特定のテキストのみが必要です。 linkid として id を持つ div

これは私のコードです

$.ajax({
    type: "POST",
    url: "saveworld.php",
    data: worldData,
    success: function(data) {
        if (data.length > 0) {
            $('#space').append("<a id='" + data + "' class='square' style='background-color:#" + color2 + ";color:#" + tcolor2 + ";' href='worlds/" + data + "'>" + name2 + "</a>")
        }
    }
});​

たとえば、特定のデータが必要です。saveworld.php に存在する次のデータが必要です。

<div id='linkid'>23</div>

($('#linkid',data))そのデータを取得する ようなものになると思いますが、それ [Object Object ] を使用していますが、応答ページ saveworld.php のデータの特定の部分を使用したい

4

1 に答える 1

1

phpスクリプトがJSONコードの一部を返す場合は、次のようにJSONをデコードする必要があります。

var res = $.parseJSON(data);

そして、PHPスクリプトでテーブルをレンダリングするときにデータを使用できるようになったら、次のようにします。

res.MyFirstVar;

phpスクリプトのより良い方法は、コードが適切に実行されたかどうかをテストすることです。実行チェックテスト用にboolを使用してphpテーブルをレンダリングします。

$result = array();
$result['ok'] = false;
/* do something */
if( //all is ok )
{
$result['ok'] = true;
}
render_json($result); //choose your way to render the json

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

$.ajax({
type: "POST",
url: "saveworld.php",
data: worldData,
success: function(data){
var res = $.parseJSON(data);
 if (res .ok){ 

$('#space').append(
    "<a id='" + res.linkid + "' class='square' style='background-color:#"+ color2 +  ";color:#" + tcolor2 + ";' href='worlds/" + res.linkid + "'>"   
     + res.name2 + "</a>"
)
}else{
//notify the use that failled
}
于 2012-08-27T14:05:48.850 に答える