2013-01-19 274 views
0

我有一张表格,其属性对于所有将被插入的行都不是共同的,这意味着我的原理图将允许一些列为空,这取决于所选的类型。Asp.net MVC 3查看设计

的表格

Item table 

ItemId 
Name 
Location 
Typeid 

Type table 

Typeid 
Desc 

当在表单中选择(从下拉)某种类型的,在该项目的某些属性将被显示给用户和他们将已被输入到。我如何处理这个问题。

回答

0

你可能会有一个控制器操作(可能是一个控制器)每个表,所以你得到单独的搜索引擎优化。您还需要每个表的视图以及这些值并不真正共享。你可以创建一个象牙城堡,这个城堡会给出一个通用List或DataTable的表格,但是如果你正在学习这条路线,只需使用一个控件即可。

0

你也可以用Javascript和AJAX来做到这一点。你可以有一个隐藏的名为'item-form'的div。在选择其中一个下拉选项时,javascript函数可以使用所选项目类型的html(具有必要属性)填充项目表单,并使div可见。

喜欢的东西 -

$("#dropdown").change(function(){ 
    if($(this).val()==1) 
     $("#item-form").html(); //form with the attributes for type 1 
    else if ($(this).val()==2) 
     $("#item-form").hmtl(); //form with the attributes for type 2 

}); 

你可以使用呼叫控制器,专用于选择的类型这将返回部分景色行动填补div的。

+0

这适用于创建操作,但不适用于编辑操作 – mpora

+0

如果它在一个视图中工作,它应该在另一个视图中工作。你在编辑视图中做了什么不同? – mridula