Jquery在wordpress中单击按钮警报消息

问题描述

| 我想通过使用jQuery单击按钮在Word新闻插件中保存警报消息 PHP代码
function ss_load_script() {
    echo \"<script type=\'text/javascript\' src=\'\".get_bloginfo(\'wpurl\') .\"/wp-content/plugins/Test/msg.js\'></script>\" .\"\\n\";
}

require_once(\"view.PHP\");
//add_action(\'wp_head\',\'ss_load_script\');
add_filter(\'the_content\',\'test\');
add_action(\'wp_footer\',\'display_copyright\');
View.PHP
function test($content) {
        ss_load_script();
        if(strpos($content,\'[wel]\')){

                 createform();
                 }
    return $content;
}
function createform(){?>
        <form id=\"frmtest1\">
                <table style=\"width:100%;border:1px;\">
                    <tr>
                        <td colspan=\"2\" align=\"center\">Register</td>
                    </tr>
                    <tr>
                        <td align=\"right\">UserName</td><td align=\"left\"><input type=\"text\"  id=\"txtusername\"/></td>
                    </tr>
                    <tr>
                        <td align=\"right\">Password</td><td align=\"left\"><input type=\"text\"  id=\"txtpassword\"/></td>
                    </tr>
                    <tr>
                        <td></td><td align=\"left\"><input type=\"button\" id=\"btnsave\" name=\"btnsave\" onclick=\"a()\" value=\"Save\" /></td>
                    </tr>
                </table>
        </form>
Javascript:
function a(){
    $.noConflict();
    jQuery(document).ready( function () {                              
        $(\"#btnsave\").click(function(){
                    alert(\"test\")
                });
    });
}
    

解决方法

        首先,您应该加载WordPress安装中提供的jQuery脚本。您可以在主插件调用中执行此操作,如下所示: myplugin.php
...
add_action(\'wp_enqueue_scripts\',\'setup_scripts\'); 

function setup_scripts() {
     wp_enqueue_script(\'jquery\');  
}
然后,在您的视图中,您可以输出自定义脚本调用。 view.php
...
<?php
  // do stuff
?>
<script language=\"javascript\" type=\"text/javascript\">
jQuery(\'#btnsave\').click(function() {
    alert(\'Hello\');
});
</script>
根据调用脚本的时间以及DOM完成渲染的时间,您可能需要将调用包装在文档就绪调用中,如下所示: view.php
...
<?php
  // do stuff
?>
<script language=\"javascript\" type=\"text/javascript\">
jQuery(document).ready(function() {
    jQuery(\'#btnsave\').click(function() {
        alert(\'Hello\');
    });
});
</script>