我只能访问正文内容,而不能访问页眉或页脚,Jquery 加载在每个页面的页脚中,因此当我的脚本加载到正文中时,它们会出现“$ 未定义”之类的错误。当我尝试在 dom 上加载脚本时,我仍然收到错误,因为它仍在主 jquery 之前加载。我能做些什么来让正文中的 jquery 在页脚脚本之后加载吗?
进一步说明:我确实搜索了其他用户发布的内容,但没有遇到这种特殊情况。我尝试了一个简单的
$(document).ready(function () {
但没有成功。 我正在尝试让表单验证脚本正常工作并且仍然继续
Uncaught TypeError: $(...).validate is not a function
使用下面的答案确实解决了一些问题,但没有解决这个问题。我的代码是:
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
<script type="text/javascript">
window.addEventListener('load', function () {
$.getScript("https://ajax.googleapis.com/ajax/libs/jqueryui/1.9.1/jquery-ui.min.js");
$.getScript("https://ajax.aspnetcdn.com/ajax/jquery.validate/1.17.0/jquery.validate.min.js");
$.getScript("https://ajax.aspnetcdn.com/ajax/jquery.validate/1.17.0/additional-methods.js");
});
</script>
<script type="text/javascript">
window.addEventListener('load', function () {
$('#commentForm').validate({ // initialize the plugin
rules: {
email: {
required: true,
email: true
},
mobile_phone: {
required: true,
phoneUS: true
}
},
submitHandler: function (form) { // for demo
//alert('valid form submitted'); // for demo
var $phone_temp = $('#mobile_phone').val();
$('#mobile_phone').val($phone_temp.replace(/\D+/g, ''));
form.submit();
}
});
});
</script>
<!-- in footer: using for local testing -->
<script src="https://.../jquery.js"></script>
<script src="https://.../bootstrap.js"></script>
最佳答案
//a load event happens after all resources are loaded for the page.
window.addEventListener('load', function () {
//do your jQuery logic
});
关于javascript - 由于平台限制,无法更改 jquery 加载位置(在页脚中)。加载后需要在正文中加载脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51444983/