用于解析json的Jquery数据属性

时间:2013-04-12 19:04:13

标签: java javascript jquery html html5

我有基于Spring mvc的java web应用程序。从我的服务器我发送一个字符串数组列表。

在表格中,我将其读入数据属性。

类似

   <td id="context"class="hidden" data-contexts='${result.getContext()}'></td>

当我将鼠标悬停在每一行上时,我想显示数据属性的值。

http://jsfiddle.net/3WgTY/(预期行为)

现在问题出在调试模式,我看到表是这样的。

http://jsfiddle.net/4DMqr/(当前行为)

所以jquery.data()无法正常工作。

我不知道为什么数据上下文有双引号,即使在html我使用单引号。有人可以告诉你如何解决它。

2 个答案:

答案 0 :(得分:3)

由于内部双引号,json周围的双引号会破坏代码。您可以使用单引号(http://jsfiddle.net/4DMqr/2/),但如果您的json包含单引号,则会遇到同样的问题。要全面修复它,只需用&quot;

替换所有“属性内部”

http://jsfiddle.net/4DMqr/4/

<td id="context" data-contexts="[&quot;\&quot;java\&quot; is awesome&quot;,&quot;\&quot;java\&quot; is object oriented&quot;]">java</td>

此外,Id必须是唯一的,并且.live在较新版本中被折旧/删除。请更新您的代码以解决这两个(无关的)问题。

答案 1 :(得分:2)

只是好奇为什么你需要那个循环

  <td id="context" data-contexts='java is awesonme <br> java is oo '>java</td>

这个

有什么不对
var context = $(this).find("td#context").data("contexts");   
        $('#contextData').html(context );

可能我不明白