过滤器名称无效" Javascript"在HAML

时间:2014-12-28 23:44:14

标签: javascript ruby-on-rails haml

在为Rails应用程序编写一些HAML时,我尝试使用:javascript过滤器将一些内联javascript嵌入到文档中。每当我尝试加载页面时,Rails就会抱怨Invalid filter name ":javas­cript".我想要包含的代码如下:

:javas­cript
  $(document).ready(function() {
    $('#variants').editableTableWidget();
  });

为什么rails抱怨?

1 个答案:

答案 0 :(得分:2)

您似乎在代码中有一个额外的字符“soft hyphen” (U+00AD),位于“{javascript”的sc之间。它不会显示在HTML中,但复制代码并粘贴到终端以运行它会显示额外的字符,错误消息显示为

Invalid filter name ":javas-cript".

(这里我用普通的连字符替换了软连字符,以便它显示在HTML中)

它可能不会显示在您的编辑器中,但如果您将光标放在一个字符上,您可能会注意到sc之间需要额外按键。 / p>

要解决此问题,只需删除此额外字符即可。如果您找不到或不确定,请删除整个javascript并重新输入。