0

Kendo UI for MVC を使用していますが、次の操作を行うと ComboBox で奇妙な動作が発生します。

  1. ComboBox で項目を選択します。
  2. ページから移動します。
  3. ページに戻るには、ブラウザの [戻る] ボタンを使用します。

戻ると、ComboBox は空白です (または、構成した場合はプレースホルダーが表示されます)。ただし、ComboBox を開くと、最初に選択したアイテムが強調表示されます。したがって、テキストは保持されていませんが、値は保持されているように見えます。

通常、データ入力項目はページを離れたときの値を保持するため、この動作は標準的ではないようです。

ページに戻ったときに ComboBox がテキストを保持していることを確認する方法はありますか?

ありがとう、

ケン

4

2 に答える 2

0

あなたのコードのいくつかを見ると助けになるでしょうが、私はこれを捨てます。これは、Kendo().DropDownListFor を使用するために少し文書化されていませんが、それが最善であることがわかりました。また、先に進んで、リスト オプションを、データがどのように見えるものから SelectListItem の IList に変換するのが最善であるかを発見しました。これは、一連のビューにドロップされるパーシャルです。

@using (Html.BeginForm(null, null, FormMethod.Post, new { id = "ChangeProject" }))
{   
    @(Html.Kendo().DropDownListFor(x => x.CurrentProjectId)
        .HtmlAttributes(new { style = "width: 450px;" })
        .OptionLabel("Project...")
        .BindTo(Model.ProjectSelectList)
        .Events(events => events.Change("submitProjectForm"))
    )
    <script type="text/javascript">
        function submitProjectForm() {
            $('#ChangeProject').submit();
        }
    </script>
}

ページに適用されたモデル...

public class ThisViewModel
{
    public int CurrentProjectId { get; set; }
    public IList<SelectListItem> ProjectSelectList { get; set; }
    ...
}
于 2013-02-11T19:57:53.493 に答える