0

我有一个 twitter 引导程序选项卡,有 3 个简单选项卡(Caracteristiques、Certificat 和 Contrats)

选项卡是带有 asp.net mvc 部分视图的 ajax 加载,它们与模型视图相关联:

部分视图与 ViewModel 类型紧密相关:

    // Load Certificat
    public ActionResult Certificat()
    {
        var modelStaffs = _twitterTabsModel.GetStaffs();

        return PartialView("_Certificat", modelStaffs);
    }

    // load Contrats
    public ActionResult Contrats()
    {
        var modelJoueur = _twitterTabsModel.GetFirstJoueur();

        return PartialView("_Contrats", modelJoueur );
    }

型号:

public class TwitterTabModel
{
    public ModelJoueur JoueurVM { get; set; }
    public IEnumerable<ModelStaff> StaffVM { get; set; }
}

public class ModelStaff
{
    public string NomStaff { get; set; }
    public string FonctionStaff { get; set; }
}

public class ModelJoueur
{
    public string NomJoueur { get; set; }
    public string PrenomJoueur { get; set; }
}

特征选项卡视图:

@model Controls.Models.ViewModel.TwitterTabModel

<h2>Caracteristiques</h2>

@using (Html.BeginForm())
{
.... the tabs code ...
    <p>
        <input type="submit" value="Save" />
    </p>

}

选项卡加载罚款,我想做的是在第一个剃须刀视图选项卡上包含一个提交按钮,如果加载,它会提交所有其他模型,但是,当我收到 post call 时,所有其他模型,JoueurVM 和 StaffVM 是即使它们已加载,也是空的。为什么是根据你的?

编辑:这是控制器发布代码,没什么特别的,只是想获取 twitterTabModel:

    [HttpPost]
    public ActionResult Tabs(TwitterTabModel model)
    {
        return View();
    }

谢谢

4

1 回答 1

0

我想出了一个解决方法,我将输入值作为 formcollection 传回,而不是整个模型,它不干净,但是很好,因为我可以获取所有发布的值

于 2012-11-01T21:46:23.260 回答