0

テキスト入力に属性を追加してdata-other-for、それを選択にリンクし、ユーザーが選択で「その他」を選択したときに選択に存在しない値をキャプチャするために使用できるようにしたいと思います。属性のコードは、実際に「その他」である値または説明を決定します。その場合、テキスト入力を有効にし、場合によっては必須にします。

これを行う唯一の方法は、新しいヘルパーを作成することであるように思われます。これは、ValidationAttributeIを介して、事前設定された検証HTML属性のみをテキスト入力に追加できるためです。または、大きくして、まったく新しいメタデータプロバイダーを作成します。

4

1 に答える 1

0

カスタム ModelBinder の実装を試みることができます。

たとえば、選択すると次のようになります。

new SelectListItem(Text = "Other", Value="bind:propertyName", Selected = False);

次に、オーバーライドされた BindModel で、単にbind:モデル プロパティを探し、見つかった場合はそこから値をコピーします。

この後、通常の検証属性を選択リストに追加できるはずです。

于 2013-03-04T06:44:43.637 に答える