jQuery UI Widget没有方法'uniqueId'

时间:2012-07-16 12:25:17

标签: javascript jquery html jquery-ui jquery-widgets

我正在尝试在我的Web应用程序中使jQuery UI小部件工作 我从原始demo获得了所有文件,基本上我做了所有可能的事情,因此代码和文件几乎与演示版本相同。

并且一直都会收到此错误:未捕获TypeError:对象[object Object]没有方法'uniqueId'

这是js代码:

$(function () {
    var date = new Date();
    date.setDate(date.getDate() + 1);
    $(".calendar", ".add-item").datepicker({
        showAnim: "drop",
        dateFormat: "yy-dd-mm",
        minDate: date
    });

    $("#bar1").menubar({
        position: {
            within: $("#demo-frame").add(window).first()
        }
    });

    $(".menubar-icons").menubar({
        autoExpand: true,
        menuIcon: true,
        buttons: true,
        position: {
            within: $("#demo-frame").add(window).first()
        }
    });

    $("#bar3").menubar({
        position: {
            within: $("#demo-frame").add(window).first()
        },
        items: ".menubarItem",
        menuElement: ".menuElement"
    });
});

以下是包含的文件:

<script src="@Url.Content("~/content/js/jquery-1.7.2.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery-ui-1.8.21.custom.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.core.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.dataTables.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.widget.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.position.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.button.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.menu.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.menubar.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.ui.core.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/main.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.validate.min.js")" type="text/javascript"></script>
    <script src="@Url.Content("~/content/js/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
    <link href="@Url.Content("~/content/css/main-admin.css")" rel="stylesheet" type="text/css" />
    <link href="@Url.Content("~/content/css/jquery-ui/themes/base/jquery-ui.css")" rel="stylesheet" type="text/css" />
    <link href="@Url.Content("~/content/css/jquery-ui/themes/base/jquery-ui.css")" rel="stylesheet" type="text/css" />
    <link href="@Url.Content("~/content/css/jquery.dataTables.css")" rel="stylesheet" type="text/css" />

这是简单的html:

<div class="header">
            <div class="demo">
                <ul id="bar1" class="menubar">
                    <li><a href="#File">File</a>
                        <ul>
                            <li><a href="#Open...">Open...</a></li>
                            <li class="ui-state-disabled">Open recent...</li>
                            <li><a href="#Save">Save</a></li>
                            <li><a href="#Save%20as...">Save as...</a></li>
                            <li><a href="#Close">Close</a></li>
                            <li><a href="#Quit">Quit</a></li>
                        </ul>
                    </li>
                    <li><a href="#Edit">Edit</a>
                        <ul>
                            <li><a href="#Copy">Copy</a></li>
                            <li><a href="#Cut">Cut</a></li>
                            <li class="ui-state-disabled">Paste</li>
                        </ul>
                    </li>
                    <li><a href="#View">View</a>
                        <ul>
                            <li><a href="#Fullscreen">Fullscreen</a></li>
                            <li><a href="#Fit%20into%20view">Fit into view</a></li>
                            <li><a href="#Encoding">Encoding</a>
                                <ul>
                                    <li><a href="#Auto-detect">Auto-detect</a></li>
                                    <li><a href="#UTF-8">UTF-8</a></li>
                                    <li><a href="#UTF-16">UTF-16</a>
                                        <ul>
                                            <li><a href="#Option%201">Option 1</a></li>
                                            <li><a href="#Option%202">Option 2</a></li>
                                            <li><a href="#Option%203">Option 3</a></li>
                                            <li><a href="#Option%204">Option 4</a></li>
                                        </ul>
                                    </li>
                                </ul>
                            </li>
                            <li><a href="#Customize...">Customize...</a></li>
                        </ul>
                    </li>
                </ul>
                <ul id="bar2" class="menubar-icons">
                    <li><a href="#File">File</a>
                        <ul>
                            <li><a href="#Open...">Open...</a></li>
                            <li class="ui-state-disabled">Open recent...</li>
                            <li><a href="#Save">Save</a></li>
                            <li><a href="#Save%20as...">Save as...</a></li>
                            <li><a href="#Close">Close</a></li>
                            <li><a href="#Quit">Quit</a></li>
                        </ul>
                    </li>
                    <li><a href="#Edit">Edit</a>
                        <ul>
                            <li><a href="#Copy">Copy</a></li>
                            <li><a href="#Cut">Cut</a></li>
                            <li class="ui-state-disabled">Paste</li>
                        </ul>
                    </li>
                    <li><a href="#View">View</a>
                        <ul>
                            <li><a href="#Fullscreen">Fullscreen</a></li>
                            <li><a href="#Fit%20into%20view">Fit into view</a></li>
                            <li><a href="#Encoding">Encoding</a>
                                <ul>
                                    <li><a href="#Auto-detect">Auto-detect</a></li>
                                    <li><a href="#UTF-8">UTF-8</a></li>
                                    <li><a href="#UTF-16">UTF-16</a>
                                        <ul>
                                            <li><a href="#Option%201">Option 1</a></li>
                                            <li><a href="#Option%202">Option 2</a></li>
                                            <li><a href="#Option%203">Option 3</a></li>
                                            <li><a href="#Option%204">Option 4</a></li>
                                        </ul>
                                    </li>
                                </ul>
                            </li>
                            <li><a href="#Customize...">Customize...</a></li>
                        </ul>
                    </li>
                </ul>
                <div id="bar3" class="menubar">
                    <div class="menubarItem">
                        <a href="#File">File</a>
                        <div class="menuElement">
                            <div>
                                <a href="#Open...">Open...</a></div>
                            <div class="ui-state-disabled">
                                Open recent...</div>
                            <div>
                                <a href="#Save">Save</a></div>
                            <div>
                                <a href="#Save%20as...">Save as...</a></div>
                            <div>
                                <a href="#Close">Close</a></div>
                            <div>
                                <a href="#Quit">Quit</a></div>
                        </div>
                    </div>
                    <div class="menubarItem">
                        <a href="#Edit">Edit</a>
                        <div class="menuElement">
                            <div>
                                <a href="#Copy">Copy</a></div>
                            <div>
                                <a href="#Cut">Cut</a></div>
                            <div class="ui-state-disabled">
                                Paste</div>
                        </div>
                    </div>
                    <div class="menubarItem">
                        <a href="#View">View</a>
                        <div class="menuElement">
                            <div>
                                <a href="#Fullscreen">Fullscreen</a></div>
                            <div>
                                <a href="#Fit%20into%20view">Fit into view</a></div>
                            <div>
                                <a href="#Encoding">Encoding</a>
                                <div class="menuElement">
                                    <div class="ui-state-disabled">
                                        Auto-detect</div>
                                    <div>
                                        <a href="#UTF-8">UTF-8</a></div>
                                    <div>
                                        <a href="#UTF-16">UTF-16</a>
                                        <div class="menuElement">
                                            <div>
                                                <a href="#Option%201">Option 1</a></div>
                                            <div>
                                                <a href="#Option%202">Option 2</a></div>
                                            <div class="ui-state-disabled">
                                                Option 3</div>
                                            <div>
                                                <a href="#Option%204">Option 4</a></div>
                                        </div>
                                    </div>
                                </div>
                            </div>
                            <div>
                                <a href="#Customize...">Customize...</a></div>
                        </div>
                    </div>
                </div>
            </div>
        </div>

3 个答案:

答案 0 :(得分:3)

删除包含:

<script src="/content/js/jquery-ui-1.8.21.custom.min.js" type="text/javascript"></script>

答案 1 :(得分:3)

uniqueId是jQuery 1.9.x引入的新函数。我假设您使用jQuery 1.8.x的dev Widget(也就是GitHub的主分支)。

答案 2 :(得分:1)

在我看来,您还没有包含所有必需的源(.js)文件。该网址或您的网址错误。

从此页面中只包含一个UI包可能更容易: http://jqueryui.com/download/ 这样你知道你有所有必需的来源吗?