1

私はいくつかの問題に遭遇し、この特定の問題に対する答えを見つけることができませんでした. 剣道からの複数選択があり、ID が提供されているときに値を入力する必要があります。ビューで、クエリ文字列にIDがあるかどうかを確認します

$(function () {
                if (visitationID != "") {                  

                    var visitationIDs = $.getJSON('/Visitation/GetVisitationTypesByID', { id: visitationID }, 'json');                        
                    $("#visitTypeMulti").data("kendoMultiSelect").value(visitationIDs);
                }
            });

multiSelect を宣言する方法

<div id="visitTypeDiv">
                    <label>Visit Type: </label>
                    <input id="visitTypeMulti" />
                </div>

var visitTypes = $("#visitTypeMulti").kendoMultiSelect({
                placeholder: "Select a visitation type...",
                dataTextField: "VisitationType",
                dataValueField: "VisitationTypeID",
                autoBind: false,
                filter: "contains",
                dataSource: {
                    type: "json",
                    serverFiltering: true,
                    transport: {
                        read: "/Visitation/GetVisitationTypes",
                        dataType: "json"
                    }
                },
                highlightFirst: true,
                ignoreCase: true

            });

最後に、visitID を配列で返すコントローラー コードです。既存のクエリを使用してからテキストを削除しているので、ID (整数) のみの配列が返されます。文字列である必要があることがわかっているので、それらを文字列配列に強制します。

public ActionResult GetVisitationTypesByID(int id)
        {
            VisitationDetailsModel model = new VisitationDetailsModel();
            var rawData = model.RetrieveVisitationTypes(id);
            //now gurantee I strip out the Airport visitation
            string[] visitTypes = rawData.Select(x => x.VisitationTypeID.ToString()).ToArray();
            return Json(visitTypes, JsonRequestBehavior.AllowGet);

        }

値を設定しても変化は見られませんが、ハードコードされた値に変更すると$("#visitTypeMulti").data("kendoMultiSelect").value(["1","5"]);問題なく動作します。また、訪問 ID で JSON.Parse() を試すと、エラーが発生します。JSON の戻り値を確認しましたが、ハードコードされた例 ["1","5"] と同じデータです。Kendo UI が取得できるようにデータをフォーマットするにはどうすればよいですか? 前もって感謝します。

4

1 に答える 1