読んでいただきありがとうございます。私はちょうど舐めるように見える難点があります。 JSONオブジェクトに基づいてテーブル行を作成するjQueryプラグインを作成しました。このプラグインでは、異なるキー/値のペアを持つ同じ変数名を持つ新しいJSONオブジェクト(これを上書きしたい)を生成するAJAX呼び出しを持つページネーションを作成したいと考えています。成功すると、データに警告することはできますが、警告しているデータの変数にはアクセスできません。jQueryからJavascript変数を返すAJAX呼び出しは前のJavascript/JSONオブジェクトを上書きする
var grid = {
"name": "test",
"columns":
[
{"name":"col1"},
{"name":"col2"}
],
"rows":
[
{"name":"col1", "value":"text1"},
{"name":"col2", "value":"text2"}
]
}
$("#myDiv").makeTable(); <-- plugin that creates table based off this JSON
// if I alert grid.columns[0].name I get col1 no problem.
それから私は、私は私のmakeTable()プラグイン内からのコードブロックを持ってループにいくつかのjQueryのものを行うと、テーブルを作成し、問題はない...
:
$.ajax({
url: 'get_json-pages.php',
type: "GET",
data: form_data, <-- my string
dataType:"script", <-- set it to script because the output is just the javascript
success: function(data) {
alert(data); <-- alerts perfectly, looks like the same JSON above but
with different key/value pairs
the alert looks like this:
var grid = {
"name": "test",
"columns":
[
{"name":"col3"},
{"name":"col4"}
],
"rows":
[
{"name":"col3", "value":"text3"},
{"name":"col4", "value":"text4"}
]
}
now when I do this:
alert(grid.columns[0].name);
it is a blank alert?
}
});
新しいデータセットを表示するために、JSONオブジェクトをAJAX JSONおよびReload my pluginで上書きするにはどうすればよいですか?
ありがとうございます!
コード内に解説を残す場合は、実際のコメントを使用して、実際に何が実行されているかを確認できます。そのコードが実際に実行されている場合(最初のアラートを使用しているとします)、次に 'grid'という変数を宣言すると、次のアラートは[jsFiddle](http://jsfiddle.net/GfCKW/)で動作します。しかし、 'dataType:"スクリプト "を指定したので、実際にはオブジェクトではなく文字列である' data'のプロパティにアクセスしようとしていると思います。 – Sinetheta