这是场景:
我正在wordpress管理员中创建一个页面。我在编辑器或WYSIWYG中创建了一个名为Contact Us的页面,我创建了一个表单和一个按钮。我想在提交表单时使用$ .post。
编辑内部:
<form>
<input type="text" name="txt"/>
<input type="button" id="btn" value="Save"/>
</form>
在page.php中,我包含了这段代码:
$(document).ready(function(){
$('#btn').click(function(){
alert('save');
});
});
但是在firebug控制台中出现了一个错误:ReferenceError:jQuery未定义
这有什么问题?或者这甚至可能吗?
答案 0 :(得分:1)
此错误:
ReferenceError:未定义jQuery
意味着未定义jQuery命名空间,因为您忘记包含jQuery lib,客户端浏览器无法在指定地址中找到它或客户端浏览器与jQuery不兼容(错误显示)在IE 5.5上,即使地址是正确的。)
此外,如果您使用WP的嵌入式jQuery库,则无法使用$
在全局范围内引用jQuery,因为WP会自动将其设置为noConflict mode。取自docs:
注意:WordPress附带的jQuery库加载“no 冲突“模式。这是为了防止与其他人的兼容性问题 WordPress可以加载的JavaScript库。
您可以创建一个闭包,将$
别名设为jQuery
,然后:
jQuery(document).ready(function($) {
// $() will work as an alias for jQuery() inside of this function
});
要使用嵌入式库,还应使用wp_enque_script
包含脚本。
Check this post了解更详细的信息。
显然,您也可以从Google CDN中添加它,并通过直接添加/回显脚本标记来跳过所有wp_enque_script
和关闭指南,这是我个人所做的,但我没有说! :)