2
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/themes/ui-lightness/jquery-ui.css" />
<script type="text/javascript" src="../Content/Scripts/jquery.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.core.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.widget.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.position.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.menu.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.selectmenu.js"></script>
<script type="text/javascript" src="../Content/Scripts/jquery.ui.tabs.js"></script>

这就是我的脚本和样式表导入的总和,但是当它尝试将其中一个<select>元素“转换”为 JQuery UI Selectmenu 时,我在 jquery.ui.selectmenu.js 和 jquery 的 Mozilla Web Developer 中收到此错误esque 主题不适用。

我之前看到过类似的错误,原因是脚本以错误的顺序很重要并且方法不存在,但似乎无法想到这里可能是什么原因造成的。

任何想法都会很棒,如果需要可以提供更多代码,但它只是应用到它的一个<select>元素。$('#exampleSelect').selectmenu();

4

2 回答 2

5

只是在黑暗中随机拍摄。根据jQuery UI 1.9 升级指南,该方法.uniqueId()仅在 jQuery UI 1.9 中引入。您的版本可能不支持上述方法,或者您可能混合了不同的版本。

于 2012-10-14T05:40:34.573 回答
4

将 jquery.ui.selectmenu.js中的第 33 行更改为:

var selectmenuId = this.element.uniqueId().attr( "id" );

至:

var selectmenuId = this.element.attr( 'id' ) || 'ui-selectmenu-' + Math.random().toString( 16 ).slice( 2, 10 );

这有望奏效。

于 2013-07-28T21:12:38.740 回答