0

ドロップダウンリストがあります。javascript関数を実行した後でも、選択した値を選択したままにするにはどうすればよいですか。現在、どのオプションを選択しても、javascript関数が実行された後、ドロップダウンはデフォルトで最初のオプションに戻ります。

                 <%=Html.DropDownList("MovieType", new List<SelectListItem>
                     {
                        new SelectListItem{ Text="Kids", Value = "Kids" }, 
                        new SelectListItem{ Text="Adults", Value = "Adults" }

                     }, new { onchange = "GetGenre()" })%>

Javascript

function GetGenre()
{   
    var e = document.getElementById("MovieType");
    var SelValue = e.options[e.selectedIndex].value;

    if (SelValue == "Kids")
        window.location.href = "";
    else
        window.location.href = "";    

}

編集:

MVC3にはKidsControllerとAdultsControllerの2つのコントローラーがあります。選択したものに基づいて、各コントローラーにルーティングしたいと思います。

4

2 に答える 2

2
  <%=Html.DropDownList("MovieType", new List<SelectListItem>
                     {
                        new SelectListItem{ Text="Kids", Value = "Kids" }, 
                        new SelectListItem{ Text="Adults", Value = "Adults" }

                     }, new { @id = "ddlGetGenre" })%>


    $(document).ready(function () {
        $('#ddlGetGenre').val($.cookies('ddlGetGenre'));

        $('#ddlGetGenre').on('change', function () {
            $.cookies('ddlGetGenre', $(this).val());
            if ($(this).val() === "Kids")
                window.location.href = "";
            else
                window.location.href = "";
        });
    });
于 2012-05-09T15:17:07.670 に答える
0

フォームをコントローラーに投稿して、フォームフィールドに選択した値を確認し、/ kids?MovieType =Kidsまたは/adult?MovieType=Adultにリダイレクトしてみませんか。その場合、onchangeはform.submit()になります。これは、Post、Redirect、Getメソッドに従います。

于 2012-07-13T06:21:27.123 に答える