无法创建JQuery对话框

时间:2014-07-16 15:47:03

标签: javascript jquery jquery-ui twitter-bootstrap dialog

我正在尝试显示JQuery对话框并立即收到错误$(...).dialog() doesn't exist。我的谷歌搜索显示,这通常是由加载2个不同的JQuery库引起的,但我文件中唯一的脚本标签是用于JQuery和Twitter Bootstrap。这是我的代码(包括我的对话框代码改编自How to implement "confirmation" dialog in Jquery UI dialog?)..

<script src="jquery-1.10.1.min.js"></script>
<script src="js/bootstrap.js"></script>
...

<script>
$(function(){
$("#dialog").dialog({
    autoOpen: false,
    modal: true
});
$(".deleteLink").click(function(e){
    e.preventDefault();
    var targetUrl = $(this).attr("href");

    $("#dialog").dialog({
        buttons : {
            "Yes" : function(){
                window.location.replace(targetUrl);
            },
            "No" : function(){
                $(this).dialog("close");
            }
        }
    });
});
});
</script>

除了加载多个库之外,还有其他原因可能会出现此错误,或者bootstrap可能会提供某种干扰吗?

1 个答案:

答案 0 :(得分:0)

您正在尝试使用jQueryUI的dialog()方法和属性,但您已经包含了Bootstrap库。要使用Bootstrap对话框,该方法称为modal()

Bootstrap Modal docs

请注意,属性完全不同。如果你想使用jQuery UI dialog()方法,你需要包含jQueryUI库,但是请注意,这有时会导致JS和CSS中与Bootstrap不兼容。