脚本在POST内容中不起作用

时间:2015-11-18 作者:Renz Joe David

我有以下代码:

Search: <input type="text" id="fname" onkeyup="myfunction()">
<a id="sear" href="" target="_blank">Search</a>
<script>
function myFunction() {
var  x = document.getElementById("fname").value;
var url = "https://www.google.co.in/search?q=all+"+x+"&biw=1366&bih=643&source=lnms&tbm=isch";
document.getElementById("sear").href=url;
}
</script>
当我将此代码添加到wordpress页面编辑器时,此代码正在更改为以下代码,并且不起作用。

Search: <input id="fname" type="text" />
<a id="sear" target="_blank"></a>Search
<script>// <![CDATA[
function myFunction() {
var x = document.getElementById("fname").value;
var url = "https://www.google.co.in/search?q=all+"+x+"&biw=1366&bih=643&source=lnms&tbm=isch";
document.getElementById("sear").href=url;
}
// ]]></script>
有没有办法让它发挥作用?

2 个回复
最合适的回答,由SO网友:WPTC-Troop 整理而成

将此标记放在您想放在页脚之前的位置。您也可以将此标记置于页面编辑器文本模式。但这样做只会停留在这一页上。所以把它放在模板文件中。

    Search: <input type="text" id="fname" >
    <a id="sear" href="" target="_blank">Search</a>
编写函数并将其挂接到wp_footer, 将代码放入funcitons.php.

        function output_custom_script(){
          ?>
          <script>
           document.getElementById(\'fname\').addEventListener(\'keyup\', function() {
    var  x = document.getElementById("fname").value;
    var url = "https://www.google.co.in/search?q=all+"+x+"&biw=1366&bih=643&source=lnms&tbm=isch";
    document.getElementById("sear").href=url;
}, false);
          </script>
         <?php
        }
        add_action(\'wp_footer\',\'output_custom_script\');
检查此项Js Fiddle

SO网友:daniyalahmad

不要在post editor中使用脚本。

转到->外观>编辑器->从右侧栏选择标题。php并粘贴此代码:

<script>
function myFunction() {
var  x = document.getElementById("fname").value;
var url = "https://www.google.co.in/search?q=all+"+x+"&biw=1366&bih=643&source=lnms&tbm=isch";
document.getElementById("sear").href=url;
}
</script>
在标题中。关闭头部标记前的php</head>