0

オプションタグ内にタグを含めることができ、それは機能します(有効なHTML4 / 5かどうかはわかりませんが、少なくともFirefoxでは機能します)。

<select>
  <option><i class="icon-plus"></i>Add item</option>
  <option><i class="icon-remove"></i>Remove item</option>
  <option><i class="icon-edit"></i>Edit item</option>
</select>

これらのオプションタグにBootstrap/FontAwesomeWebフォントアイコンを配置しています。

しかし、MVC4 / Razorを使用しているので、正しくレンダリングするための正しい構文を取得できません。それはそれらすべての内部タグをエンコードし、私は、などを取得&lt;&gt;ます。

これは私がしていることです:

// first I make a new list with the icons inside
var items = Model.Items.Select(q => new SelectListItem() {
  Selected = q.Selected,
  Text = "<i class=\"icon-add\"></i>" + q.Text,
  Value = q.Value
  });
// then render the dropdown
Html.DropDownListFor(m => m.SelectedItem, items, "All")

これを機能させるにはどうすればよいですか?

4

2 に答える 2

0

箱から出してこれを行うことはできません。使用する頻度にもよりますが、個人的にはループを介して手動で使用することをお勧めします。

必要に応じて、ドロップダウンリストの拡張メソッド/ヘルパーを作成できます。

私はここで同様の例を見つけましたが、この男はそれを使用して「select」タグをカスタマイズしますが、「options」タグをカスタマイズする必要があります:拡張メソッドのLinq式で楽しい(?)

お役に立てれば。

于 2013-02-17T21:24:42.323 に答える
0

OK簡単で簡単なオプションを選択しました...

<option>ネストされた子タグの代わりに、FontAwesomeクラスをタグに配置するだけ<i>です。そうすれば、マークアップは有効です。

もちろん、これはループで手動で行う必要があります。

于 2013-02-17T21:46:37.390 に答える