1

假设我有一个这样的 div:

<div id ="carmodel"></div>

这个 div 在页面加载 5 秒后使用 Javascript 填充,所以它看起来像这样:

<div id ="carmodel">Audi A4</div>

现在我需要在提交表单时将“Carmodel”div 中的文本发送到控制器。

@using (Html.BeginForm("Method", "Controller"))
{
     @Html.TextBox("textbox1", "")
     @Html.TextBox("textbox2", "")   
     <input type="submit" value="Subtmit"/>
}

我考虑过使用隐藏字段并将其发布在一起,但我不知道如何使用“Carmodel”div 中的文本填充隐藏字段:

@Html.Hidden("carmodelhiden", "");

好像我需要使用 JQuery 来检索这样的文本:

var value = $("#carmodel").text();

但是我怎么把它发送给控制器呢?

我还考虑过使用 .ajax 来发布它,但不确定如何处理控制器中的值,因为控制器中的 ajax 方法与表单的发布位置是分开的。

有人有什么建议吗?

4

2 回答 2

4

您需要设置隐藏输入的值:

$('#carModelHidden').val(...);
于 2013-08-08T13:20:28.850 回答
1

确保将隐藏值放在表单 using 语句之间。此外,使用强类型视图绑定模型中的属性。

@using (Html.BeginForm("Method", "Controller"))
{
<div id ="carmodel">
@Html.HiddenFor(model => model.SomeProperty)
</div>
}




@section scripts{
<script>
// Hook into some event and set: 
$('#carModelHidden').val(...);
</script>
}
于 2013-08-08T13:44:54.613 回答