簡體   English   中英

使用noConflict時出現類型錯誤-“ $不是函數”

[英]I am getting a Type Error with - “$ is not a function” when using noConflict

我正在做一個Dashboard UI,並且合並了許多Js組件。 以前它工作正常(主要是數據表),現在我做了一些Form組件切換和復選框。 我收到類型錯誤-jQuery不是使用無沖突的函數。

盡管我已經嘗試過所有在StackOverflow上發布的建議,但是在使用無沖突時,所有解決方案都無法正常工作並出現相同的問題。

當前問題是我的數據表無法正常工作...

點擊這里進入測試頁面

TypeError: $ is not a function
var oTable = $('#ActiveMedicalProblems').dataTable({

腳本在我的數據表中

var oTable = $('#ActiveMedicalProblems').dataTable({
            "aLengthMenu": [
                [5, 15, 20, -1],
                [5, 15, 20, "All"] // change per page values here
            ],
            // set the initial value
            "iDisplayLength": 5,
            "sDom": "<'row'<'col-lg-6'l><'col-lg-6'f>r>t<'row'<'col-lg-6'i><'col-lg-6'p>>",
            "sPaginationType": "bootstrap",
            "oLanguage": {
                "sLengthMenu": "_MENU_ records per page",
                "oPaginate": {
                    "sPrevious": "Prev",
                    "sNext": "Next"
                }
            },
            "aoColumnDefs": [{
                    'bSortable': false,
                    'aTargets': [0]
                }
            ]
        });

我頁面中的腳本是

jQuery(document).ready(function() {
          ActiveMedicalProblems.init();
      });

我嘗試了其他方法,但是沒有運氣。

(function($){
   ActiveMedicalProblems.init();
});

謝謝!!!

要么noConflict調用-這將是一個短期解決方案,並使所有代碼重新工作。

或者,包裝“數據表”代碼(而不是調用),如下所示:

(function($) {
var oTable = $('#ActiveMedicalProblems').dataTable({
...
})(jQuery);

但是,那時您將無法定義全局名稱。 可能更容易的是簡單地用jQuery替換$每個實例。 您的代碼將更長一些,但是將毫無疑問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM