为什么我添加的表单数据在提交时未提交给控制器?

时间:2018-11-16 17:41:27

标签: c# jquery model-view-controller

在提交Form2时,我将附加来自Form1的数据。提交时,jQuery会拦截并执行以下操作:

var Submit_frm2 = function (e) {
    e.preventDefault();
    var $frm2 = (this);
    //get form 1 data
    var $frm1Data = $($("#frm1").serializeArray());
   //get form 2 data
    var frm2Data = $("#frm2").serializeArray();

    //  add form 1 data to form 2 data
    $frm1Data.each(function (i, e) {
       frm2Data.push({ name: "frmOneData." + e.name, value: e.value });
    });

     this.submit();
};

形式2的简化类示例

public partial class FormTwoData
{
    public int id { get; set; }
    public string someString { get; set; }
    public List<SomeType> listOfTypes { get; set; }
    public FormOneData frmOneData
}

形式1的简化类示例

public partial class FormOneData
{
    public int id { get; set; }
    public string someString { get; set; }
    public string anotherString { get; set; }
}

this.submit()处的断点表明已添加form1的数据,但当frmTwoData类到达Controller时,该类为null。

我花了几个小时搜索,但都没有结果,而且我的同事都没有做过这样的事情。我完全迷住了。

我希望我已经添加了足够的信息。

在此先感谢您提供的见解。

0 个答案:

没有答案