Heim >Backend-Entwicklung >C++ >Warum ist mein ASP.NET -MVC -Formular -Array -Eigenschaft nach der Einreichung null?

Warum ist mein ASP.NET -MVC -Formular -Array -Eigenschaft nach der Einreichung null?

Linda Hamilton
Linda HamiltonOriginal
2025-02-02 04:08:14641Durchsuche

Why is my ASP.NET MVC form array property null after submission?

Lösen Sie das Problem der Übermittlung des ASP.NET MVC -Tabellenarray

In ASP.NET MVC kann ein Formular, das das Objektarray enthält, auf Probleme stoßen. Zum Beispiel:

Ihr Formular enthält mehrere Zeilen, jede Zeile repräsentiert ein Projekt im Array. Sie verwenden JQuery, um Zeilen dynamisch hinzuzufügen und zu löschen. Nach dem Einreichen des Formulars sind die Array -Attribute im Modell jedoch leer.

Lösung:

Um dieses Problem zu lösen, müssen Sie die Kontrolle des Arrays in der für Schleife manuell erzeugen. Dies stellt den richtigen Namen der Kontrolle der Kontrolle sicher.

geänderter Code:

in der Ansicht: im Controller:

Andere Vorsichtsmaßnahmen:
<code class="language-csharp">@using (Html.BeginForm("Save", "ConnectBatchProduct", FormMethod.Post))
{
  ....
  <table>
    ....
    @for(int i = 0; i < Model.BatchProducts.Count; i++)
    {
      <tr>
        <td>@Html.TextBoxFor(m => m.BatchProducts[i].Quantity)</td>
        <td>@Html.TextBoxFor(m => m.BatchProducts[i].BatchName)</td>
        <td>
          <!-- 包含隐藏输入以跟踪项目索引 -->

          <a></code>

Wenn Sie die Elemente in der Ansicht hinzufügen und löschen möchten, können Sie die Hilfsmethode oder die HTML -Vorlage
<code class="language-csharp">public ActionResult Save(ConnectBatchProductViewModel model)
{
  ....
}</code>
verwenden. Zum Beispiel können Sie eine Vorlage zum Hinzufügen neuer Projekte erstellen:

Dann können Sie JavaScript verwenden, um das neue Projekt dynamisch zum Formular hinzuzufügen:

Das obige ist der detaillierte Inhalt vonWarum ist mein ASP.NET -MVC -Formular -Array -Eigenschaft nach der Einreichung null?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn