未捕获的语法错误:Wordpress按钮函数中出现意外标记



这是我在wordpress站点中为按钮打开短代码弹出提示所做的功能之一。我还看到函数内部的wordpress添加了<p>标签,可能是中的错误

<input id="textarea" name="textarea" type="text" value="" placeholder="place it here">
<script>
function pol()
{
var x;
var name=prompt("Name","Name");
if (name!=null)
  {
  x = document.getElementById("textarea").value; 
  x = "[pol]" + name + "[/pol]";
  document.getElementById("textarea").value=x;
  }
}
</script>
<input type="button" value="pol" onClick="pol()">

错误:

Uncaught syntax error: Unexpected token <
Uncaught ReferenceError: pol is not defined

在wordpress页面中,在chrome上,检查元素显示如下功能:

    <input id="textarea" name="textarea" type="text" value="" placeholder="place it here"></p>
    <p><script>
    function pol()
    {
    var x;</p>
    Uncaught SyntaxError: Unexpected token <
    <p>var name=prompt("Name","Name");</p>
    <p>if (name!=null)
      {
      x = document.getElementById("textarea").value; 
      x = "[pol]" + name + "[/pol]";
      document.getElementById("textarea").value=x;
      }
    }
    </script></p>
    <p><input type="button" value="pol" onClick="pol()"></p>
    Uncaught ReferenceError: pol is not defined (repeated 2 times)

我发现这个主题是错误的根源。某个地方有冲突。。。

解决方案:

在每一个空行中,wordpress主题都被编码为广告<p>标签,这产生了错误,现在我修复了功能,它正在工作:

<script>
function pol()
{
var x;
var name=prompt("Name","Name");
if (name!=null)
  {
  x = document.getElementById("textarea").value; 
  x = "[pol]" + name + "[/pol]";
  document.getElementById("textarea").value=x;
  }
}
</script>
<input type="button" value="pol" onClick="pol()">

您还可以在php页面中添加以下代码,以删除每一行或空行的WordPress预编码

标记remove_filter('se_content','wpautop')

最新更新