0

ビューで通常の html ドロップダウンリスト (選択) を使用しています。何らかの理由で Html.DropdownlistFor を使用したくありません。これで、Controller クラスで選択した値を取得できるようになりました。選択した値をビューに戻すにはどうすればよいですか?

<select name='ddlLocation' id='ddlLocation'>
  <option value="">All </option>
  <option selected="selected" value="1">City1</option>
  <option value="2">City2</option>
  <optgroup label="Group">
    <option value="3">City2</option>
    <option value="4">City3</option>
    <option value="5">City4</option>
  </optgroup>
</select>
4

2 に答える 2

1

さて、selected属性を使用してすでにそれを行っています。

<option selected="selected" value="1">City1</option>

事前に選択したい値に選択された属性を配置する必要があります。

自動的にそれを処理する Html.DropDownListFor ヘルパーを使用しないことの狂気を理解したと思います。目的の動作を実現するには、ビューをスパゲッティ コードに変換する @if else ステートメントを配置する必要があるからです。しかし、ヘルパーを使用しない理由があると思います。


アップデート:

あなたのコメントから、DropDownList ヘルパーを使用しない理由は、サポートしていないためのようoptgroupです。それは真実であり、正当な理由です。しかし、 a を書くのcustom helperは些細なことであり、デフォルト値を事前に選択するために if/else ステートメントでビューをスパゲッティ化することを実際に避けることができます。

于 2013-08-28T20:28:21.800 に答える