NET Core Html.BeginCollectionItem通过ajax验证新添加的行不起作用

时间:2018-08-29 09:12:42

标签: razor asp.net-core asp.net-core-mvc

主视图中有2个默认的局部视图

<tbody id="partial">
  @Html.Partial("_PartialCreate")
  @Html.Partial("_PartialCreate")
</tbody>

这是我的局部视图_PartialCreate

    @model ANGS_SyncBook.Models.Transaction.JournalDetails
@using(Html.BeginCollectionItem("JDetails"))
{
<tr scope="row">
    <td>
        @Html.DropDownListFor(model => model.Gla_Code, new SelectList(ViewBag.ChartOfAccounts, "Gla_Code", "Gla_Name"))
        @Html.ValidationMessageFor(model => model.Gla_Code, null)
    </td>
</tr>
}

一切正常,验证工作正常,用户输入的数据成功传递到控制器。问题是当用户尝试添加另一行时,验证不会触发

新行代码

$('#btnNewLine').click(function () {
        $.ajax({
            url: '/Journals/PartialCreate',
            success: function (data) {
                $('#partial').append(data);
            }
        });
    });

控制器

public IActionResult PartialCreate(int? i)
    {
        ViewBag.i = i;
        GetChartOfAccounts();
        GetFunctions();
        GetExpenses();
        return PartialView("_PartialCreate");
    }

样本

enter image description here

但是数据仍然可以正确传递

如何解决此问题?我想念什么吗?谢谢

0 个答案:

没有答案