【问题标题】:Jquery "greater than" symbolJquery“大于”符号
【发布时间】:2012-08-23 14:07:12
【问题描述】:

当我在下面的符号中使用 '>' 时

$('#tablesorter > tbody')

在代码中

var message;
myService.getUsers({ callback : function(str) { 
    message= jQuery.parseJSON(str);
}}); 

$.each(message, function() {

    $('#tablesorter > tbody').append(
    '<tr><td>' + this.name
    + '</td><td>' + this.surname
    + '</td>' + '</tr>');
});

注意:myservice是dwr服务,不知道是否相关

我在 chrome 控制台中有错误

Uncaught Error: Syntax error, unrecognized expression: &gt;

&amp;gt; 表示&gt;

当我删除 &gt; 时,错误消失了,但没有按预期工作

【问题讨论】:

  • 我有点怀疑这是问题所在。您可以在 jsFiddle 上发布可重现的 sn-p 代码吗?
  • 我认为您使用了转换代码的模板系统。您的完整服务器解决方案是什么?
  • 您能否提供有关“无法按预期工作”的更多详细信息?你的意思是它不像你想象的那样工作,还是不像你希望的那样工作?选择器中的&gt; 抓取直系后代。
  • @ExplosionPills dwr 是一个从服务器执行 ajax 调用的框架。
  • 您的问题不在于脚本,而在于您发送它的方式:dwr(我不知道为什么)将 javascript 编码为 html。

标签: javascript jquery dwr


【解决方案1】:

大于 &gt; 符号用于 CSS 选择器(jQuery 选择器所基于)中,表示“直接后代”。

Documentation

您发布的代码运行良好,其中的&gt; 符号不会导致任何错误。

【讨论】:

    【解决方案2】:

    无论您在哪里输出代码,它都会被转换为自动转义。也许你有一种介于两者之间的模板语言。

    您需要将所有 javascript 代码存储在单独的文件中(最佳解决方案),或者找到一种方法与您的页面(JSP?)一起禁用输出转义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-19
      • 2012-04-22
      相关资源
      最近更新 更多