0

私はListBoxMVCで作成しています:

@Html.ListBoxFor(model => model.SelectedItemIds, new SelectList(Model.Items, "Value", "Text"))

これは正常に動作ListBoxし、ビューに表示されます。

ユーザーがリスト内の項目をクリックして選択したときに、ある種のコールバックを追加したいと考えています。MVC3 を使用してこれを行うにはどうすればよいですか?

4

3 に答える 3

0

このオーバーロードを使用して、javascript onChange ハンドラーを追加できます。

@Html.ListBoxFor(model => model.SelectedItemIds, new SelectList(Model.Items, "Value", "Text"), new{onchange="onListBoxChanged(); return false;"})

onListBoxChanged() は JavaScript 関数です。

于 2013-02-11T21:01:28.873 に答える
0

このようなことができます

@using(html.begainform( ........your action name........))
{
@Html.ListBoxFor(model => model.SelectedItemIds, new SelectList(Model.Items, "Value", "Text"))
}

&jqueryでは、このようなものを書くことができます

   $("<Id or class of your ListBox>").change(function() {
        this.form.submit();
   }); 
于 2013-02-12T08:49:10.907 に答える
0

ListBox に id パラメーターを追加し、jQuery を使用して必要なコールバックを実行することで、おそらく最適なサービスが提供されるでしょう。コード行は次のようになります。

@Html.ListBoxFor(model => model.SelectedItemIds, new SelectList(Model.Items, "Value", "Text"), new {id = "MyListBox")

その後、次のように jQuery でイベントを簡単にフックできます。

$('#MyListBox').change(function() { ...some function... } );
于 2013-02-11T21:01:14.563 に答える