web-dev-qa-db-fra.com

TypeError non récupéré: l'objet [objet objet] n'a pas de méthode "boîte de dialogue"

J'essaie d'utiliser la boîte de dialogue jQueryUI dans une application MVC3 mais j'ai un problème avec elle. La boîte de dialogue que j'ai est en train de charger une vue partielle dans laquelle l'utilisateur modifiera ou créera un nouvel élément. Cela fonctionne bien, mais si j'essaie d'enregistrer ou de mettre à jour l'élément, ou si j'essaie de le fermer, le message apparaît dans le titre.

J'ai ajouté tous les fichiers .js requis mais j'obtiens toujours l'erreur. J'ai également utilisé Firebug mais je ne trouve toujours pas pourquoi l'erreur se produit.

HTML

<span class="EditLink ButtonLink" addressId="@addr.Id">Modify this Address</span>
<div id="popup"></div>

JavaScript

$(document).ready(function () {
    var id = 0;

    //define config object
    var dialogOpts = {
        title: "Edit item",
        modal: true,
        autoOpen: false,
        height: 500,
        width: 500,
        open: function () {
            $("#popup").load("/partialviewtoload/" + id);
        },
        buttons: {
            Cancel: function() {
                $(this).dialog('close');
            }
        }
    };

    $("#popup").dialog(dialogOpts);    //end dialog

    $('.EditLink').click(function() {
        id = $(this).attr("itemId");
        $("#popup").dialog("open");
        return false;
    });    
});
30
Nollaig

le problème était que je faisais référence à "jquery-1.5.1.min.js" deux fois. Une fois dans le _Layout.cshtml et aussi dans la vue partielle que je chargeais. . Suppression de la référence dans la vue partielle et triée.

61
Nollaig

Il semble que le navigateur n'ait pas chargé jQueryUI, assurez-vous qu'il se trouve dans votre DOM

5
Iakov Mishchenko

Dans mon cas, c'était que

vous devez inclure d'abord grid.locale-en.js puis jquery.jqGrid.min.js.

0
Georgy Gobozov