0

我有基于 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 中我使用单引号。有人可以告诉如何解决它。

4

2 回答 2

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 在较新版本中已被折旧/删除。请更新您的代码以修复这两个(不相关的)问题。

于 2013-04-12T19:25:58.217 回答
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 );

可能我不明白

于 2013-04-12T19:27:07.847 回答