7

以下针对 ASP.NET MVC 4 的代码在 Firefox 和 Chrome 上正常工作(页面加载没有错误,下拉列表显示/响应正确),但是 IE10 在页面加载时抛出以下内容:

> 0x800a01b6 - JavaScript 运行时错误:对象不支持“选择”的属性或方法

这是 SELECT html 标记:

<select class="chzn-select" data-placeholder="Group" name="Group">
    @foreach(var group in @Model.Groups)
    {
      <option value="@group">@group</option>
    }
</select>

以及它下面的JavaScript:

 <script type="text/javascript">
    $(function () {
        $(".chzn-select").chosen();
    });
</script>

我已将 selected.css 和 selected.*.js 文件添加到适当的样式和脚本包中,然后将它们包含在我的母版页中。

(页面请求上的开发工具屏幕) 在此处输入图像描述

此外,我尝试使用 select2 并在 IE 中遇到相同的错误,其他浏览器运行正常。(我更新了捆绑包以包含对 .css 和 .js 的引用)我更改的代码是:

<select class="GroupDropdown" name="Group">
      @foreach(var group in @Model.Groups)
      {
         <option value="@group">@group</option>
      }
 </select>
 <script type="text/javascript">
      $(function () {
           $(".GroupDropdown").select2();
      });
 </script>

以下适用于所有浏览器(文件位于根目录并正确命名)

<!DOCTYPE html>
<html>
<head>
    <title>Dropdown Test</title>
    <script src="jquery.js" type="text/javascript"></script>
    <script src="select2.js" type="text/javascript"></script>
    <link href="select2.css" rel="stylesheet" />
</head>
<body>
    <select>
        <option value="A">A</option>
        <option value="B">B</option>
        <option value="C">C</option>
    </select>
</body>
<script type="text/javascript">
    $(function(){
        $("select").select2();
    });
</script>
</html>
4

1 回答 1

2

我最近遇到了同样的问题,请确保您使用的是 1.8.1 之后的稳定 jquery 版本

于 2013-05-03T15:38:51.230 回答