Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# asp mvc中的下拉列表选择_C#_Asp.net_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

C# asp mvc中的下拉列表选择

C# asp mvc中的下拉列表选择,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,我使用循环在同一视图中创建多个DropDownList。循环的结果是创建了两个列表。但是问题是,当用户从一个列表中选择一个项目时,另一个列表将更改其选择,使其与另一个列表中的选择相同。 那么,如何避免这种情况,并将选择过程从一个列表分离到另一个列表? 下面是生成列表的代码 @Html.DropDownList("selectedDays", listItems, new { @class = "form-control", id="Day"+item.id }) 编辑: 列表项代码如下所示 L

我使用循环在同一视图中创建多个
DropDownList
。循环的结果是创建了两个列表。但是问题是,当用户从一个列表中选择一个项目时,另一个列表将更改其选择,使其与另一个列表中的选择相同。
那么,如何避免这种情况,并将选择过程从一个列表分离到另一个列表?
下面是生成列表的代码

@Html.DropDownList("selectedDays", listItems, new { @class = "form-control", id="Day"+item.id })
编辑:
列表项代码如下所示

List<SelectListItem> listItems = new List<SelectListItem>();

listItems.Add(new SelectListItem
{

    Text = "1 day",
    Value = "1"
});
listItems.Add(new SelectListItem
{

    Text = "3 days",
    Value = "3"
});
listItems.Add(new SelectListItem
{
    Selected = true,
    Text = "7 days",
    Value = "7"
});
listItems.Add(new SelectListItem
{

    Text = "15 days",
    Value = "15"
});
listItems.Add(new SelectListItem
{

    Text = "30 days",
    Value = "30"
});
List listItems=new List();
添加(新建SelectListItem)
{
Text=“1天”,
Value=“1”
});
添加(新建SelectListItem)
{
Text=“3天”,
Value=“3”
});
添加(新建SelectListItem)
{
所选=真,
Text=“7天”,
Value=“7”
});
添加(新建SelectListItem)
{
Text=“15天”,
Value=“15”
});
添加(新建SelectListItem)
{
Text=“30天”,
Value=“30”
});

这就是循环

@{
foreach (var item in companyList)
{
<div class="panel-body">

                                            <form class="form-horizontal" role="form" action="/Admin/Telecom" method="post">
                                                <div class="form-group">
                                                    <label class="col-sm-2 control-label">Payment View</label>
                                                    <div class="col-sm-6">

                                                        @Html.DropDownList("selectedDays", listItems, new { @class = "form-control", id="Day"+item.id })
                                                    </div>

                                                    <div class="col-sm-3">
                                                        <button type="submit" name="btnView" value="@item.TelecomCompanyName" class="btn btn-primary btn-rounded w-md waves-effect waves-light m-b-5">change</button>
                                                    </div>
                                                </div>
                                            </form>


                                    </div>
}
@{
foreach(公司列表中的var项目)
{
支付视图
@DropDownList(“selectedDays”,listItems,new{@class=“form control”,id=“Day”+item.id})
改变
}

您不应该在DropDownList之间重复使用
列表项
。在一个列表上选择一个值后,将在所有列表上选择元素。为每个DropDownList创建单独的列表。

您正在动态生成具有相同id的更多DropDownList。
它们应该有不同的ID才能正常工作

@Html.DropDownList("selectedDays" + item.id, listItems, new { @class = "form-control", id="Day"+item.id })

为整个循环提供代码。它太大了,我们需要它吗???@RacilHilanYes,恐怕你需要。首先,太大的循环本身就是坏代码的标志。无论如何,你不需要全部发布,只需发布与列表和循环行相关的行。我们需要找到太多列表链接的原因。你确定每个列表项都是我的吗你的意思是用两个列表创建一个表单?因为你的代码创建两个表单,每个表单有一个列表。如果这是你想要的,那么很好,否则你必须将表单的代码从循环中删除。如果这是整个外观,也不算太糟糕:-)我尝试过了,但不幸的是@borkovskiTake a l无效看这里:也许它会符合你的情况。