【问题标题】:DropDownList not populating with Data from DatasourceDropDownList 未填充来自数据源的数据
【发布时间】:2014-11-18 08:59:29
【问题描述】:

您好,我正在使用 Telerik appBuilder 制作我的第一个移动应用程序,但我无法让 Kendo 数据源与下拉列表一起使用。

我的网络服务的结果如下,但我无法为该结果获得正确的数据绑定。

{"d":[{"id":2209,"nom":"Test 1"},{"id":23608,"nom":"Test 2"},{"id":24061, "nom":"测试 3"},{"id":24741,"nom":"测试 4"},{"id":27347,"nom":"测试 5"}]}

请问,有什么想法吗?非常感谢。

/* product.html*/
<div id="product" data-role = "view"
         data-layout = "sharedlayout" data-model="app.productService.viewModel">                              
    <div class="view-content">
       <form >
           <div data-role="listview" data-style="inset">
             <div>
                Products:
                    <select id="product" data-role="dropdownlist"
                            data-bind="source: productsdataSource " 
                            data-text-field="id" 
                            data-value-field="product">
                        <option value="0"> </option>  
                    </select>
             </div>
          </div>
       </form>
    </div>
</div>   

ProductViewModel.js

(function (global) 
{
    var ProductsViewModel,
        app = global.app = global.app || {};

    ProductsViewModel = kendo.data.ObservableObject.extend (
    {
        getProducts: function() {
            var dataSource = new kendo.data.DataSource({
                transport: {
                    read: {
                        url: "urlexample",
                        type:"post",
                        contentType: "application/json; charset=utf-8",
                        dataType: "json"
                    }
                },
                schema: {
                    data: "d" 
                },
                type: 'json'
            });

        }
    });
    app.productService = { viewModel: new ProductsViewModel() };
})(window);

【问题讨论】:

    标签: kendo-ui datasource viewmodel kendo-dropdown telerik-appbuilder


    【解决方案1】:

    我不确定你的问题到底出在哪里,但我有一些想法......

    1. 为什么要扩展 observable?为什么不直接使用 kendo.observable({})?
    2. 您的 viewModel 正在返回一个函数,而不是 Kendo UI 所期望的对象。

    我认为您可能有点过于复杂了。我整理了一个简单的例子......

    http://plnkr.co/edit/T41nZqZNLqtOTfjG8upK?p=preview

    我是否也建议您放弃data-role="dropdownlist"?移动设备有自己的选择列表实现,这样您就可以在设备上使用本机选择功能。

    【讨论】:

      猜你喜欢
      • 2014-07-16
      • 2023-02-01
      • 2016-12-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多