2

JSON 形式の文字列で Javascript 変数を初期化することにより、テーブルにデータをロードしようとしています。私が宣言した場合:

<script type="text/javascript">
var data = new String("{totalCount: '1', identifier: 'EntityID', items: [{'EntityID':'1','Country':'United States','Region':'','State':'California','County':'Santa Clara','City':'San Jose','ZipCode':'95134'}]}");
var d3 = eval('(' + data + ')');
<span dojoType="dojo.data.ItemFileWriteStore" jsId="dataStore" data=d3></span>
</script>

私のテーブルは行を正しくロードします。

スクリプトの前に Java 文字列を初期化し、そのオブジェクトを次のように Javascript 変数に渡そうとしました。

<%
String d = "{totalCount: '1', identifier: 'EntityID', items: [{'EntityID':'1','Country':'United States','Region':'','State':'California','County':'Santa Clara','City':'San Jose','ZipCode':'95134'}]}";
%>

<script type="text/javascript">
var data = new String(<%=d%>);
// var data = new String(d) // tried this as well
var d3 = eval('(' + data + ')');
<span dojoType="dojo.data.ItemFileWriteStore" jsId="dataStore" data=d3></span>
</script>

私のテーブルはこれを認識せず、この方法で行を渡そうとしても行をロードできません。テーブルがデータをロードできるように、Java 文字列を Javascript に正しく渡すにはどうすればよいですか?

4

1 に答える 1

1

引用符で囲んでみてください。

var data = new String("<%= d %>");
于 2013-07-30T18:14:15.590 に答える