ASP.Net MVC jQuery Dialog Teilweise
Vielleicht jemand da draußen kann mir helfen zu verstehen, was Los ist. Ich bin mit jQuery UI dialog() für die Anzeige von html partials in mein Projekt. Wenn ein Benutzer klickt auf Add New es zeigt das add-client-form. Allerdings, wenn der Benutzer klickt auf den Hinzufügen-oder Abbrechen-Schaltflächen im dialog bekomme ich eine Fehlermeldung, "$(this).dialog ist keine Funktion". Wenn ich entfernen Sie die open-Ereignis und zeigt in einer statischen form, in der dialog, die Tasten, die funktionieren.
ClientsController
public ActionResult ajaxCreateClient()
{
Client c = new Client();
AddToViewData(c); //adds some additional info about client
return PartialView("__ClientForm", c);
}
Anzeigen: Kontakte/Erstellen
....
<p>
@Html.LabelForField(model => model.Client.Name) <!-- custom extension that I wrote -->
@Html.TextboxFor(model => model.Client.Name)
<a id="btnAddNew" href="javascript:void()">Add New</a>
</p>
....
<div id="addNew"></div>
jQuery
$(document).ready(function () {
$("#btnAddNew").click(function () {
$("#addNew").dialog("open");
});
$("#addNew").dialog({
autoOpen: false,
title: "Add Client",
width: 410,
modal: true,
resizable: false,
open: function(event, ui) {
$(this).load("@Url.Action("ajaxCreateClient", "Clients")");
},
buttons:
{
"Add": function () {
//validate() and do something
$(this).dialog("close");
},
"Cancel": function () {
//do something else
$(this).dialog("close");
}
}
});
});
Dank!
InformationsquelleAutor gnome | 2011-01-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen wie diesem:
Hmm, das ist merkwürdig. Sind Sie immer einige javascript-Fehler? Versuchen Sie, den code vor dem Aufruf dieser Methode.
Ja sehr seltsam. Es produziert die gleiche Fehlermeldung.
Ich habe versucht, das Beispiel ausführen und es funktioniert für mich mit beiden
$(this).dialog('close');
und$('#addNew').dialog('close');
. Drucken Sieconsole.log($(this));
um die FireBug-Konsole, um zu sehen, warum Sie sagen, dass .dialog ist eine Undefinierte Funktion.Gut, sagt failed to load /Kontakte/Erstellen; das ist die Ansicht im obigen code-snippet. Hat wirklich mich ratlos. Habe es auf Arbeit in jsfiddle, da Sie es für mich sein, in Bezug auf etwas anderes jetzt.
InformationsquelleAutor Darin Dimitrov