我在我的MVC5应用程序中使用Eric hynds mutiselect下拉列表。我在select2上使用这个JQuery插件,因为它支持复选框和我需要的一些其他功能。我的解决方案参考了以下javascrip& css文件。
使用bundle
添加jquery-2.1.3.jsbundles.Add(new ScriptBundle("~/bundles/jquery")
.Include("~/Scripts/jquery-{version}.js"));
<link href="~/Content/jquery.multiselect.css" rel="stylesheet" />
<script src="~/Scripts/jquery.multiselect.min.js"></script>
如果页面加载我得到错误
0x800a01b6 - JavaScript运行时错误:对象不支持属性或方法&#39;小部件&#39;
不确定我错过了什么。以下是我的代码。我知道下拉列表加载没有任何问题
<link href="~/Content/jquery.multiselect.css" rel="stylesheet" />
<script src="~/Scripts/jquery.multiselect.min.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$("#Courses1").mutiselect(
{
selectedText: "# of # selected"
});
});
</script>
@using (Html.BeginForm())
{ <div>
@Html.ListBox("Courses1")
</div>
}
控制器
public class PersonController : Controller
{
// GET: Person/Create
public ActionResult Create()
{
ViewBag.Courses1 = new MultiSelectList(GetPersons(), "ID", "Name");
return View();
}
}
修改 我在VS中创建了新的空应用程序。并包含简单的HTML页面。我仍然得到同样的错误。
第20行第22栏未处理的例外情况 http://localhost:52267/Scripts/jquery.multiselect.min.js
0x800a01b6 - JavaScript运行时错误:对象不支持属性 或方法&#39;小部件&#39;
下面是完整的html页面。
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<link href="Content/jquery.multiselect.css" rel="stylesheet" />
<script src="Scripts/jquery-1.11.2.js"></script>
<script src="Scripts/jquery.multiselect.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(function () {$("#mSel").multiple({selectedText: "# of #"});});
</script>
<div>
<select multiple id="mSel">
<option value="1">Option 1</option>
<option value="2">Option 2</option>
</select>
</div>
</body>