JQuery UI Dialog TypeError:Object [object Object]没有方法'dialog'(没有重复引用jquery或jquery-ui)

时间:2013-06-13 13:33:56

标签: c# asp.net-mvc jquery-ui jquery-ui-dialog

我知道这里还有很多其他类似的问题,但没有一个能解决我的问题。

我正在尝试创建一个对话框,提示用户选择是否离开页面(并继续他们刚刚点击的链接)丢失他们在textarea中输入的文本,或者留在页面上。

许多其他答案都说检查是否重复了对JQuery的引用,所以我删除了所有引用,并在_Layout.cshtml页面的顶部放入了以下内容。

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.1/jquery.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>

其他答案也考察了UI的相关部分是否包含在内。我相信上面的参考包括一切吗?

所以这是我的脚本,包含在相关页面的底部,以及div(我从另一个答案中获得了关于如何创建对话框的div和脚本)。我已经包含了我的其他脚本,以防出现问题。

<div id="dialog" title="Confirmation Required">
  Are you sure about this?
</div>

<script type="text/javascript">    
    $(document).ready(function ()
    { 
        $("#dialog").dialog({
            modal: true,
            bgiframe: true,
            width: 500,
            height: 200,
            autoOpen: false
        });

        $("a.profile").click(function (e) {
            e.preventDefault();
            var hrefAttribute = $(this).attr("href");

            $("#dialog").dialog('option', 'buttons', {
                "Confirm": function () {
                    window.location.href = hrefAttribute;
                },
                "Cancel": function () {
                    $(this).dialog("close");
                }
            });

            $("#dialog").dialog("open");
        });

        $('a.ico').click(function (event) {
            expandTextArea();
        });
        $('textarea#notes').blur(function () {
            expandTextArea();
        });
    });    

    function expandTextArea()
    {
        $("textarea#notes").height($("textarea#notes")[0].scrollHeight);
    }
</script>

如果有人能指出错误,或者给我一个更好的解决方案来创建我的确认对话框,我将不胜感激。

提前谢谢。

增加:

这是我在Chrome控制台中遇到的错误:

Uncaught TypeError: Object [object Object] has no method 'dialog'     person:403
(anonymous function)                                                  person:403
c                                                                     jquery.min.js:4
p.fireWith                                                            jquery.min.js:4
x.extend.ready                                                        jquery.min.js:4
q                                                                     jquery.min.js:4

Person是页面index.cshtml中包含jquery的部分页面。

@Html.Partial("_Person", Model.Person);

0 个答案:

没有答案