-1

これが私の問題です。dropdownlist実行時にデータを入力するコントロール(サーバー側)を持つmvcプロジェクトがありautopostback、trueに設定し、有効にしましviewstateた。このドロップダウン リストにはselectedIndexChanged、ユーザーが何かを選択したときにトリガーされるイベント ハンドラーがあります。

ただし、ページが読み込まれると、Page.IsPostBack常に false になるため、データリストが再作成され、イベント ハンドラーをトリガーする変更はありません。この投稿を読みましたが、ASP Web フォームはポストバックを自動的に処理しますが、MVC ではポストバックをトリガーするために JavaScript コードを手動で記述する必要があります。

selectedIndexChangedEventHandler に送られ、再度再設定されないようにする方法を知っていdropdown listますか?

編集:私はすでに試しました

<script type="text/javascript">
     function OnIndexChanged() {
         var databaseList = document.getElementById("FeaturedContent_DatabaseList");

         __doPostBack(FeaturedContent_DatabaseList, '');
         //window.location.href("http://localhost:49729/home/schemas?dbName=SchoolDB");//+ document.getElementById("DatabaseLists").selectedIndex;
         //postMessage("h", "http://localhost:49729/home/schemas?dbName=SchoolDB");
         //__doPost(
     }
</script>
4

1 に答える 1

2

ご覧のとおり、MVC を使用しようとしています。したがって、ポストバックの考えを忘れてください。毎回ページをリロードすることはありません。おそらくサーバーに対して ajax async リクエストを行うでしょう。イベントを取得するためのコードは次のとおりです。

 $("#state").change(function(){
       //on-change code goes in here.
       //variable "this" references the state dropdown element
 });

そのjQuery。#stateはドロップダウン リストの ID です。

于 2013-04-19T12:39:50.090 に答える