我似乎无法查明失败的原因-有什么想法吗? ->在.aspx中查看
custom.master参考/和脚本
<link rel="stylesheet" href="/admin/css/custom.css" />
<script src="/admin/js/jquery-1.9.1.min.js"></script>
<script src="/admin/js/jquery-1.10.2-ui.min.js"></script>
<link href="css/ui-lightness/jquery-ui-1.8.13.custom.css" rel="stylesheet"/>
<asp:ContentPlaceHolder ID="HeadPlaceHolder" runat="server"></asp:ContentPlaceHolder>
<script>
$(function () {
var $ = jQuery.noConflict(); <-- This here is the culprit
在rPage.aspx中(MasterPageFile =“〜/ admin / custom.master”)
<asp:Content ID="Content1" ContentPlaceHolderID="HeadPlaceHolder" runat="server">
<link href="css/bootstrap-3.3.5.min.css" rel="stylesheet" />
</asp:Content>
<script>
$(function () {
var $ = jQuery.noConflict(); //**Without this line the next line fails**
$("#<%= txtStartDate.ClientID %>").datepicker();
错误:
从控制台:
TypeError: $ is not a function rPage:380:13
从调试器firefox开发版:
378 $(function () {
379 //var $ = jQuery.noConflict();
380 $("#ContentPlaceHolder_txtStartDate").datepicker();
最佳答案
查看(当前)发布的示例,我看不到NoConflict
调用的原因。我认为这是因为可能尚未在示例代码中显示其他库。
那说...
在引入其他库之前,请尝试将NoConflict
声明移至立即调用的函数表达式(IIFE)之外。
像这样
<script>
$.noConflict();
// Code that uses other library's $ can follow here.
$(function () {
// Do awesome stuff here...
})();
</script>
我也建议...
像这样将jQuery别名化为IIFE ...
<script>
$(function ($) {
// Do awesome stuff here...
})(jQuery);
</script>