WordPress去掉HTML中的反斜杠

时间:2017-02-18 作者:Coding Enthusiast

嗨,我是WordPress的新手。我最近在WordPress服务器上运行网页时遇到了这个问题。

我有一段代码可以清除文本输入字段中的所有空白。但在将其上传到服务器目录后,代码中的反斜杠就会被去掉。js文件也是如此。因此,我无法使用js\\n 一点也不奇怪。

<script>
$(document).ready(function(){
$("input#MobileNo").on({
  keydown: function(e) {
    if (e.which === 32)
      return false;
  },
  change: function() {
    this.value = this.value.replace(/\\s/g, "");
   }
 });

 });
</script>
你知道怎么解决这个问题吗。我已经读过了esc_js() 可以使用,但不知道如何使用。

WordPress很棒,也很安全,因此我想学习它。

1 个回复
SO网友:nyedidikeke

esc_js() 用于转义单引号、htmlspecialchar“<;>&;,并修复行尾;它只将单个必需参数作为字符串:要转义的文本,并返回转义文本。

它旨在用于内联JavaScript,如onclick="" 属性(请注意,字符串必须在single quotes). 这个\'js_escape\' 这里也应用了过滤器。

实际上,使用esc_js() 功能非常简单,鼓励sanity of data.

让我们看看下面的例子中它的用法;

而不是像中那样简单地回显变量<?php echo $variable; ?> 对于onclick="" 属性使用内联JavaScript时,应利用esc_js() 因此,您应该执行以下操作:<?php echo esc_js( $variable ); ?>.

So:使用(好)

<a href="/news/" onclick="alert( \'<?php echo esc_js( $variable ); ?>\' )"></a>
而不是(坏)

<a href="/news/" onclick="alert( \'<?php echo $variable; ?>\' )"></a>
版本中引入2.8.0 并在中定义wp-includes/formatting.php, 这个esc_js() 相关功能包括:esc_sql(), esc_url(), esc_html(), esc_attr(), fetch_rss().

相关推荐

Testing Plugins for Multisite

我最近发布了一个WordPress插件,它在单个站点上非常有效。我被告知该插件在多站点安装上不能正常工作,我理解其中的一些原因。我已经更新了代码,现在需要一种方法来测试更新后的代码,然后才能转到实时客户的多站点安装。我有一个用于测试的WordPress安装程序的单站点安装,但需要在多站点安装上进行测试。根据我所能找到的唯一方法是在网络上至少有两个站点来安装整个多站点安装,以测试我的插件。设置WordPress的整个多站点安装是插件开发人员的唯一/首选方式,还是有更快的测试环境可用。