当 header DropdownListFor 发生变化时,一列值将发生变化 - 在 mvc razor view c# 中
One Column values will be changed when header DropdownListFor is getting changed - in mvc razor view c#
刚接触此类工作,需要您的帮助
在我看来.cshtml ----
<table class>
<thead>
<tr>
<th >@Html.CheckBox("IsAllRowSelected")</th>
<th >
@Html.DropDownListFor(m => m._dropDownForcolumn2, new List<SelectListItem>
{ new SelectListItem{Text="option1", Value="option1"},
new SelectListItem{Text="option2", Value="option2"},
new SelectListItem{Text="option3", Value="option3"}
}, new {@id="dropDownForcolumn2" })
</th>
<th>@Html.Label(" column 3 ")</th>
<th>@Html.Label("column 4")</th>
<th>@Html.Label("column 5")</th>
</tr>
</thead>
<tbody>
@foreach (Models.MyModelClass item in Model._List)
{
<tr>
<td>@Html.CheckBox("IsEachRowSelected")</td>
<td>@item.Option1Values</td>
@*//@item.option2values;
@item.option3vlaues;*@
<td>@item.column3value</td>
<td>@item.column4value</td>
<td>@item.column5value</td>
</tr>
}
1.cant post 再次返回控制器以仅获取此列值。它只是一个大页面中的一个小 table
2 我已经在项目中有其他值
现在列中只有 option1 值,要求是将第二列与 header 下拉列表绑定并选择第二个选项,然后这将显示 @item.option2values 并选择第三个选项,然后将显示 @item.option3values
不会更改或触及其他列。
像这样的东西
<td>
if(dropdownvalue = option1)
@item.Option1Values
elseif(dropdownvalue == option2 )
@item.option2values
elseif(dropdownvalue == option2 )
@item.option3vlaues
</td>
ajax , jquery 是允许的,但整个页面 post 或部分视图 post 是不允许的
这样做
将 onload 方法放在 table 标记中
function load()
{
$('.MyProperty2').hide();
$('.MyProperty3').hide();
}
function Filldropdown(){
var value = $('#dropdownID :selected').text();
if (value == 'option1') {
$('.MyProperty1').show();
$('.MyProperty2').hide();
$('.MyProperty3').hide();
} else if (value == 'option2') {
$('.MyProperty2').show();
$('.MyProperty1').hide();
$('.MyProperty3').hide();
} else if (value == 'option3') {
$('.MyProperty3').show();
$('.MyProperty2').hide();
$('.MyProperty1').hide();
}
}
刚接触此类工作,需要您的帮助
在我看来.cshtml ----
<table class>
<thead>
<tr>
<th >@Html.CheckBox("IsAllRowSelected")</th>
<th >
@Html.DropDownListFor(m => m._dropDownForcolumn2, new List<SelectListItem>
{ new SelectListItem{Text="option1", Value="option1"},
new SelectListItem{Text="option2", Value="option2"},
new SelectListItem{Text="option3", Value="option3"}
}, new {@id="dropDownForcolumn2" })
</th>
<th>@Html.Label(" column 3 ")</th>
<th>@Html.Label("column 4")</th>
<th>@Html.Label("column 5")</th>
</tr>
</thead>
<tbody>
@foreach (Models.MyModelClass item in Model._List)
{
<tr>
<td>@Html.CheckBox("IsEachRowSelected")</td>
<td>@item.Option1Values</td>
@*//@item.option2values;
@item.option3vlaues;*@
<td>@item.column3value</td>
<td>@item.column4value</td>
<td>@item.column5value</td>
</tr>
}
1.cant post 再次返回控制器以仅获取此列值。它只是一个大页面中的一个小 table 2 我已经在项目中有其他值 现在列中只有 option1 值,要求是将第二列与 header 下拉列表绑定并选择第二个选项,然后这将显示 @item.option2values 并选择第三个选项,然后将显示 @item.option3values
不会更改或触及其他列。
像这样的东西
<td>
if(dropdownvalue = option1)
@item.Option1Values
elseif(dropdownvalue == option2 )
@item.option2values
elseif(dropdownvalue == option2 )
@item.option3vlaues
</td>
ajax , jquery 是允许的,但整个页面 post 或部分视图 post 是不允许的
这样做 将 onload 方法放在 table 标记中
function load()
{
$('.MyProperty2').hide();
$('.MyProperty3').hide();
}
function Filldropdown(){
var value = $('#dropdownID :selected').text();
if (value == 'option1') {
$('.MyProperty1').show();
$('.MyProperty2').hide();
$('.MyProperty3').hide();
} else if (value == 'option2') {
$('.MyProperty2').show();
$('.MyProperty1').hide();
$('.MyProperty3').hide();
} else if (value == 'option3') {
$('.MyProperty3').show();
$('.MyProperty2').hide();
$('.MyProperty1').hide();
}
}