1

我有一个用一组部分视图动态填充的标签条。这些局部视图中的每一个都是一个条目表单,其中一些具有不同的实体框架数据模型。

I would like to POST the model to the server with two arguments (a targeted tab index and the model data) whenever a different tab is selected. (保存选项卡数据)

我的问题是单击选项卡链接似乎是“获取”操作而不是“发布”操作,而且我无法弄清楚如何提交足够全面和独立的数据。(全面的模型和孤立的模型与特定的局部视图相关联)我假设我可以使用 JQuery 在局部视图上查找并执行更新按钮的单击方法,但这不会保留目标索引。

找到唯一标识表单本身并随后发布它的最佳方法是什么?有人在这里给我提示吗?

4

2 回答 2

0

如前所述,使用 ajax 调用。元素是在父页面还是部分页面上都没有关系。渲染 html 后,可以引用 DOM 上的任何元素。

于 2014-01-07T12:59:47.223 回答
0

我不确定最好的方法是什么。我所做的是将代码包装在我的部分中

@using (Html.BeginForm("Action", "Controller"))
{
 }

然后只有一个提交按钮点击事件。那只发回该部分的信息。如果您想将多个部分发送到同一操作,那么我将使用在单击选项卡时设置的隐藏字段,并且您应该能够使用 Request.Form [“FieldName”] 拉出该索引。希望这会有所帮助。

编辑:

您也可以尝试 ajax 回调到服务器

$.ajax({
        url: "@Url.Action("Action", "Controller")",
        type: 'post',
        data: {id: 'hiddenfield', data: 'data', etc},
        dataType: 'json',
        contentType: "application/json",
        success: function (result) {
            (do something)
        }
});

要以这种方式发送模型,您需要将这些字段添加到数据行。如果有很多数据,我建议对其进行字符串化。您可以将此调用放在提交按钮单击事件中。

于 2013-08-22T22:32:19.907 回答