1

jquery プラグイン Chosen を使用して、Html.Listbox をマルチ選択ツールとしてマスクします。デフォルトのテキストを変更する必要があることを除けば、うまく機能します。HTMLとjqueryの両方でプレースホルダーテキストを設定しようとしました。ここに関連するコードがあります...

@Html.ListBox("Filter-Chooser",aList,new { @class = "chzn-select filter-chooser") 

function EnableMultiChoose() {
    $(".chzn-select").data("placeholder", "Filter By...");
    $(".chzn-select").chosen();
}

パラメータ @placeholder = "Filter By ..." を無駄に指定するのにも疲れました.html出力を確認したところ、プレースホルダプロパティが設定されているようです...

Html レンダリング

<select class="chzn-select filter-chooser" id="Filter-Chooser" multiple="multiple" name="Filter-Chooser" placeholder="Filter By...">
<option value="Content">Content</option>
<option value="Author">Author</option>
<option value="DeckName">Deck Name</option>
...

プレースホルダーを適切に指定する方法についてのアイデアはありますか?

4

4 に答える 4

4

さて、 data-placeholder 属性を介してプレースホルダーを指定します。いいね。

@Html.ListBox("Filter-Chooser", aList , new Dictionary<string,Object> { {"class","chzn-select   filter-chooser"}, {"data-placeholder","TEXT HERE"}})
于 2013-01-15T17:04:57.477 に答える
0

simple_form を使用している場合は、次のようなものが必要になります。

<%= f.input :education_ids, :label => false, :collection => Education.all, :input_html => { :data => { :placeholder => 'Education' }} %>
于 2013-04-28T03:55:52.587 に答える
-2

以下のように解決します。

$("[value='Select Some Options']").val("your text");
于 2014-11-06T06:14:56.707 に答える