0

私はMVCを初めて使用するので、少し太っていたらごめんなさい。私はVBを使用しています

dbからのデータを使用してhtmlドロップダウンリストに入力しようとしていますが、何があっても最初の項目が常に選択されます。

私は何が間違っているのですか?

これが私のコードです-コントローラー内:

ViewData("MatchTypeList") = New SelectList(_db.GetMatchTypes.ToList(), "MatchTypeID", "MatchTypeName", SelectedValue)

そして、ビューで

<%= Html.DropDownList("MatchType", CType(ViewData("MatchTypeList"), IEnumerable(Of SelectListItem)), "Any", New With {.class = "forminput"})%>
4

1 に答える 1

0

これはMVCの問題です。回避策の1つは、ドロップダウンリストの名前をプロパティの名前以外に変更することです。次に、送信する前に、名前をプロパティの実際の名前に戻します。

例:

<script type="text/javascript">

    $(function () {
        $("form").submit(function () {
            $("select").each(
                function () {
                   $(this).attr("name", $(this).attr("name").replace(/ZZZ/, ''));
            });
        });
    });

</script>

<%= Html.DropDownList("MatchTypeZZZ", CType(ViewData("MatchTypeList"), IEnumerable(Of SelectListItem)), "Any", New With {.class = "forminput"})%>

マスターページにjavascript(JQueryを使用)を配置して、ドロップダウンリストを持つアプリ内のフォームにZZZを安全に追加し、送信時に元の名前に戻すことができるようにします。

于 2010-05-12T18:38:01.647 に答える