我正在尝试使用jQuery onclick插入一个用于切换comment_form的链接,但它不起作用...
在我的comments.php中,我在comment_form()周围添加了以下html:
<p>BEFORE FORM</p>
<a style="cursor:pointer" onclick="jQuery('#add-comment).toggle();">Toggle comment-form</a>
<div id="add-comment" style:"display:none;">
<?php $comments_args = array(
....
);
comment_form($comments_args);
?>
<p>AFTER FORM</p>
</div>
为了确保加载jQuery,我在functions.php中添加了以下代码
if (!is_admin()) add_action("wp_enqueue_scripts", "my_jquery_enqueue", 11);
function my_jquery_enqueue() {
wp_deregister_script('jquery');
wp_register_script('jquery', "http" . ($_SERVER['SERVER_PORT'] == 443 ? "s" : "") . "://ajax.googleapis.com/ajax/libs/jquery/3.0.0/jquery.min.js", false, null);
wp_enqueue_script('jquery');
}
链接已正确显示但表单未隐藏且切换未激活。 我哪里错了?
答案 0 :(得分:0)
两个错误:
您缺少结束语:
<a style="cursor:pointer" onclick="jQuery('#add-comment').toggle();">Toggle comment-form</a>
^-- here
会导致语法错误。除此之外,您需要=
而不是:
:
<div id="add-comment" style="display:none;">
^- here
这就是为什么表单一开始就不隐藏的原因。
修复了这两个错误后,它可以运行:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>BEFORE FORM</p>
<a style="cursor:pointer" onclick="jQuery('#add-comment').toggle();">Toggle comment-form</a>
<div id="add-comment" style="display:none;">
Comment form
<p>AFTER FORM</p>
</div>
&#13;