如何在多个表单中使用一个字段值

时间:2011-04-03 16:24:21

标签: asp.net html asp.net-mvc

在1个asp mvc网页上可以有两个单独的表单,使用一个(列表框)控件的值吗?

e.g。

使用(beginForm){ //表单1 列表框(“名称”) //提交等 }

使用(beginForm){ //表格2

// submit2等 }

表单2知道以第一种形式放置名为“name”的ListBox的值吗?

2 个答案:

答案 0 :(得分:0)

不 - 你只能在没有任何诡计的情况下发送该表格内的内容。您可以使用jQuery挂钩到表单post并根据其他表单中的内容动态设置值。 此链接描述了如何挂钩jQuery提交。 http://hasin.wordpress.com/2009/10/01/jqueryhooking-form-submit-and-making-it-an-ajax-request/

在你的函数中,你可以同步这些值 - 最简单的方法是将这个字段保持在任一形式的OUTSIDE之外,并在每个表单中包含一个。您只需更改表单外部的那个,然后在提交时,您将设置每个表单字段:

$('#txtForm1Field').val($('#txtPlaceHolder').val())
$('#txtForm2Field').val($('#txtPlaceHolder').val())

如果您希望它们的名称相同,则需要先根据表单ID进行选择

另外请记住,你也不能在彼此之间嵌入表格。

jQuery有其他方法(例如通过ajax请求只是在发布的表单数据中插入值)但是由于每个表单的范围,你没有任何“默认情况下”用html允许这样做

答案 1 :(得分:0)

如果您可以从第一个表单的post函数调用相同的视图(也传递模型),那么您将从模型的列表中获取数据。更好的选择是创建局部视图。 据我所知,如果您在返回视图时通过模型,那么您将获得所需的数据。