2013-07-30 218 views
1

我想通过用JSON格式的字符串初始化一个Javascript变量来加载包含数据的表。如果我声明:将Java字符串传递给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,以便我的表能够加载数据?

+0

您是否收到错误信息? – M1Reeder

+0

是的,对不起,我应该发布控制台日志。错误是:'在获取table:table的数据时出错。错误dojo.data.ItemFileWriteStore:没有提供JSON源数据作为URL或嵌套Javascript对象。“ – raphnguyen

回答

1

尝试引用周围。

var data = new String("<%= d %>"); 
+0

这样做的窍门。多挑剔。 – raphnguyen

+1

@raphnguyen是的,“挑剔”..这是他们一直如此。 –