2017-07-04 8 views
0

ループを使用して、同じビュー内にマルチDropDownListを作成しています。ループの結果、2つのリストが作成されます。しかし、問題はユーザーがあるリストからアイテムを選択し、もう一方のリストがその選択を他のリストから同じ選択に変更する場合です。
これを避けるにはどのようにして、選択プロセスをリストと別のリストに分けるのですか?ここ
はコードである
ドロップダウンリストasp mvc

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

EDITリストを生成します。
のListItemのコードは、この

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" 
}); 


で、これがループ

@{ 
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> 
} 
+0

ループ全体のコードを指定します。 –

+0

それは大きすぎます、私たちはそれを必要としますか? @ RacilHilan –

+0

はい、私は恐れています。まず第一に、大きすぎる*ループは悪いコードを示すものです。とにかく、あなたはそれをすべて投稿するだけで、リストとループ線に関連する行をポストする必要はありません。あまりにも多くのリストがリンクされている理由を調べる必要があります。 –

答えて

0

YですDropDownListsの間にlistItemsを再利用しないでください。 1つのリストで値を選択すると、要素はすべてSelectedになります。各DropDownListに対して個別のリストを作成します。

+0

私はそれを試みましたが、残念ながら@ borkovskiは動作しませんでした –

+0

ここを見てください:https://stackoverflow.com/questions/18880662/mvc-multiple- dropdownlists-1-listselectlistitemあなたのケースに合っているかもしれません。 – borkovski

0

同じIDのドロップダウンリストを動的に生成しています。
正しく動作するには、異なるIDが必要です。

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