首页 新闻 会员 周边 捐助

Uncaught TypeError:$(".default-select2").select2 is not a function

0
悬赏园豆:30 [已解决问题] 解决于 2017-07-11 16:07

      我在aspx页面中使用了一个System.Web.UI.HtmlControls.HtmlSelect控件:
<select id="selContract" runat="server" class="default-select2" onchange="onchangeContract(this)" tabindex="-1" style="display: none; width: 100%;"></select>


      页面的JS代码如下:

    <script type="text/javascript">
        $(".default-select2").select2();
        $(function () {
            //$(".default-select2").select2();
            //  $("#selContract").select2();
        });

        $(function () {
            $("#tablePro").load("Process/QueryHandler2.ashx?active=ProblemTable");
        });

        function onchangeContract(item) {
            var sPbsId = $(item).attr("value");
            $("#tablePro").load("Process/QueryHandler2.ashx?active=ProblemTable&pbsId=" + sPbsId);
        }
    </script>

  页面加载时,select控件通过后台的cs文件加载数据,选择控件中的某条数据,页面中的列表显示相应的数据。

  

  现在的问题是,页面有时会显示空白,提示的错误如标题,即:
  Uncaught TypeError:$(".default-select2").select2 is not a function
      但刷新一下,页面又正常显示了。

 

  前面的JS代码中,标红色的是第一版的代码,标青色的是改动过的代码,但均出现过同样的错误提示。

  

  请教大家,是什么原因导致的这个问题?怎样解决呢?

      请大家帮忙,谢谢!

0724job的主页 0724job | 初学一级 | 园豆:41
提问于:2017-06-17 10:51
< >
分享
最佳答案
0

请检查select2插件是否引入

请检查选择器是否选中了dom元素

请留意代码执行顺序

收获园豆:30
幻天芒 | 高人七级 |园豆:37205 | 2017-06-17 12:10

应该是引用了select2插件的,因为这个问题是偶尔出现,而不是每次都出现

0724job | 园豆:41 (初学一级) | 2017-06-17 14:19

@0724job: 那就考虑加载顺序问题。

幻天芒 | 园豆:37205 (高人七级) | 2017-06-18 14:09

@幻天芒: 我把js方法放在前面,html放在后面,有时还是会出现这个错误

可能我对select2这个插件的用法还不够了解

0724job | 园豆:41 (初学一级) | 2017-06-25 18:53

我把select2.min.css和select2.min.js这两个文件重新引用到页面中,再观察一段时间看看

0724job | 园豆:41 (初学一级) | 2017-06-25 19:22

请检查选择器是否选中了dom元素

调试时,显示是选中了的,错误是有时才出现,可能还是select2插件引入的问题

0724job | 园豆:41 (初学一级) | 2017-06-25 19:29
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册