Kendo UI Tabstrip没有绑定

时间:2013-12-26 20:19:19

标签: kendo-ui kendo-mobile

更新:澄清我没有收到任何错误,但看起来视图渲染速度快于应用绑定,甚至刷新。

我正试图在tabtrip中获取任何东西。我决定在PhoneJS之后尝试KendoUI Mobile,但是我在尝试在元素中显示简单数据时非常沮丧。我正在考虑购买kendoui手机,但无法让简单的东西上班。我有一个简单的ViewModel,我无法绑定。以下是我的代码。

<div data-role="view" data-reload="true" id="tabstrip-profile" data-title="Profile" data-layout="mobile-tabstrip">
    <ul id="profile" data-role="listview" data-style="inset" data-type="group">
        <li>Profile
            <ul>
                <b data-bind="text:firstname"></b>
            </ul>
        </li>
    </ul>
</div>
var viewModel = kendo.observable({
        firstname: app.user.firstname,
        lastname:  app.user.lastname
    });
     this shows the correct data --->console.log(viewModel.firstname)

    kendo.bind($('#profile'), viewModel);

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:0)

在Kendo UI Mobile中,您不必使用:

kendo.bind($('#profile'), viewModel);

您可以在视图元素上使用data-model

<div data-role="view"
     data-reload="true"
     id="tabstrip-profile"
     data-title="Profile"
     data-layout="mobile-tabstrip"
     data-model="viewModel">

请注意,这是从全局/窗口范围引用的,因此您可能希望在创建它时显式:

window.viewModel = ...

另外,我认为ListView中的项目可能不会直接绑定到viewModel。我不确定这究竟是如何起作用的,因为我从来没有试过按照你的方式去做。

通常,您将ListView绑定到项目数组或DataSource,然后ListView中的每个项目都将对数组中的单个项目进行数据绑定。

它可能表现得很愚蠢,因为你没有将ListView绑定到数据项数组。