Javascript 剑道Ui组合框-设置默认值

Javascript 剑道Ui组合框-设置默认值,javascript,mvvm,kendo-ui,kendo-combobox,Javascript,Mvvm,Kendo Ui,Kendo Combobox,我成功地填充了我的组合框。但现在我正试图为combobox设置默认值。例如,让我们假设来自源的第三个值。这是我的输入和数据源: <script> viewModel.dataSourceType = new kendo.data.DataSource({ transport: { read: { url: "/api/Type/Get", dataType: "json" } },

我成功地填充了我的组合框。但现在我正试图为combobox设置默认值。例如,让我们假设来自源的第三个值。这是我的输入和数据源:

<script>
viewModel.dataSourceType = new kendo.data.DataSource({
    transport: {
        read: {
            url: "/api/Type/Get",
            dataType: "json"
        }
    },
    schema: {
        id: "Id",
        data: "Data",
        model: {
            id: "Id",
            fields: {}
        }
    }
});

viewModel.dataSourceType=新建kendo.data.DataSource({
运输:{
阅读:{
url:“/api/Type/Get”,
数据类型:“json”
}
},
模式:{
id:“id”,
数据:“数据”,
型号:{
id:“id”,
字段:{}
}
}
});



这可能真的很容易,但我正为此苦苦挣扎。谢谢。

我假设您正在查找配置选项。

问题可能出在您的
模型定义中,即绑定到组合框的内容

根据您的定义,您的JavaScript应该是:

var dataSource = new kendo.data.DataSource({
    type: "odata",
    transport: {
        ...
    }
});

var model = new kendo.observable({
    dataSourceType: dataSource,
    model : { Id: 2 }
});
kendo.bind($("#type"), model);
其中
2
是您希望作为默认(初始)值的值

意识到我必须为
Id
声明一个额外的
模型
,因为您在
数据绑定
定义中说
模型.Id

也许你想说:

var model = new kendo.observable({
    dataSourceType: dataSource,
    Id: 2
});
kendo.bind($("#type"), model);
然后您应该将HTML定义为:

<input id="type"
    data-role="combobox"
    data-value-primitive="true"
    data-auto-bind="true"
    data-text-field="Name"
    data-value-field="Id"
    data-bind="value: Id, source: dataSourceType">

您可以这样实现

var combobox = $("#kendoitems").data("kendoComboBox");
combobox.select(1);
您需要传递索引值以选择(索引)

参考此

var combobox = $("#kendoitems").data("kendoComboBox");
combobox.select(1);