Ich arbeite mit ASP.Net MVC 5 und C#. Ich erzeuge Ansichten und Controller aus meiner Modellstruktur mit VS2015 Scaffolding-Funktion. Die Controller und Ansichten geben meiner Anwendung einige grundlegende Funktionen zum Bearbeiten, Erstellen und Löschen von Datensätzen. Alle Formularansichten enthält diese Erklärung:Was ist falsch mit ajax.beginform
@using (Html.BeginForm())
Ich habe versucht, diese Erklärung zu ersetzen durch:
@using (Ajax.BeginForm("Edit", new AjaxOptions()))
Ich habe etwas verändert in Aktion bearbeiten Methode. Wie Sie sehen können, ich kommentiert, um einige Code nicht zu umleiten (und eine Fehlermeldung beispielsweise angezeigt werden)
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "....")] MyDataObject obj)
{
/* if (ModelState.IsValid)
{
...
db.SaveChanges();
return RedirectToAction("Index");
}*/
return View(obj);
}
Natürlich, ich habe umfassen Microsoft JQuery Unauffällig Ajax NuGet Pacakges und die 2 JS-Skripte Einbeziehung in die Kopf. A haben auch diese Zeile in web.config hinzufügen:
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>
ich keine JS Fehler haben, aber die ganze Seite aktualisiert wird. Ich kann es sehen Beaucse ich diese Art von Tags auf meiner Seite hinzufügen (auf der _Layout und in der Form)
@DateTime.Now.ToLongTimeString()
Was ist falsch?
Dank
Ich denke, Ihre Ajax-Optionen fehlen, deshalb erhalten Sie den Fehler –
Ich möchte nur das Formular neu laden ohne die ganze Seite. Sie brauchen in diesem Fall keine Optionen? – Bob5421
Wenn Sie Ihre Seite neu laden möchten, dann warum verwenden Sie Ajax Formular –