带有单引号和AJAX的浏览器的奇怪行为

时间:2014-02-21 13:12:29

标签: jquery ruby-on-rails ruby ajax

我有一个页面,其中包含以下链接:

  <%= link_to_function(
        'my function',
        "my_js_method('#{escape_javascript(
          t('.wanna',
            :name => h(name)
          ))
         }', this)",
      ) %>

名为"<foo'bar>"的生成代码为:

<a href="#" onclick="my_js_method('Wanna <foo'bar> ?', this); return false;">my_function</a>

您会注意到onclick属性中间的单引号。

好奇的想法是我在rails控制台中执行这些行:

>> helper.send(:html_escape, "<foo'bar>")
=> "&lt;foo&#39;bar&gt;"

>> helper.send(:escape_javascript, helper.send(:html_escape, "<foo'bar>"))
=> "&lt;foo&#39;bar&gt;"

我的浏览器(Chromium)在阅读HTML流程中是否解释了&#39;&lt;&gt;

如何忽视这种转变;保留逃脱的角色?

0 个答案:

没有答案