1

データソースの配列があり、data-bind 属性でバインドしたい

 <div data-role="listview"
         data-template="template3"
         data-bind="source: products"></div>

テンプレート3:

 <script type="text/x-kendo-template" id="template3">
        # for (var y = 0; y < data.length; y++) { #
        <div data-role="listview"
             data-template="template"
             data-bind="source: data[y]"></div>
          # } #

    </script>  

ビューモデル:

 var viewModel = kendo.observable({
            products: [new kendo.data.DataSource({
                schema: {
                    model: {
                        id: "Id"
                    }
                },
                transport: {
                    read: {
                        url: "@Url.Action("Products", "Home")",
                        dataType: "json"
                    },
                    parameterMap: function(options, operation) {
                        if (operation !== "read" && options.models) {
                            return { models: kendo.stringify(options.models) };
                        }
                    }
                }
            })]

そして、私はエラーが発生します:

Uncaught ReferenceError: y が定義されていません

4

1 に答える 1

0

DataSource の周りに配列があるのはなぜですか?

とにかく、あなたが得ている具体的なエラーはy、アクセスしようとしているコンテキストで が定義されていないためです。

テンプレートを変更する必要があります。

   # for (var y = 0; y < data.length; y++) { #
    <div data-role="listview"
         data-template="template"
         data-bind="source: data.at(#=y#)"></div>
   # } #
于 2015-02-12T16:11:22.760 に答える