【问题标题】:knockout js template from javascript file从 javascript 文件中剔除 js 模板
【发布时间】:2016-04-24 07:38:43
【问题描述】:

我正在向一个 php 文件提交一个表单,该文件会从数据库中返回一些产品。我现在需要使用返回的数据添加一个剔除模板。代码如下:

$("#search-filter-form").submit(function(event) {
        // stop form from submitting normally 
        event.preventDefault();

        // get some values from elements on the page: 
        var $form = $( this ),
            url = $form.attr( 'action' );

        // Send the data using post 
        var posting = $.post(url, 
            {   place: searchFilterViewModel.searchFilterAutoComplete.placeObject,
                categories: searchFilterViewModel.categorySelect.selectedCategories
            }).done(function(data) {
                searchResultsViewModel.allProducts(JSON.parse(data));
                for(var x = 0; x < searchResultsViewModel.allProducts().length; x++) {
                    $("search-results").append();// NEED TO APPEND THE KNOCKOUT TEMPLATE HERE
                }
            });
    });

我想要一个带有 html 模板的单独文件。我已经创建了这个示例文件:

product_template.html:

<script type="text/html" id="product-template">
    <h3 data-bind="text: allProducts.name"></h3>
    <p>Credits: <span data-bind="text: credits"></span></p>
</script>

如何从上面的 javascript 函数中打印出该模板文件?

【问题讨论】:

    标签: javascript php html templates knockout.js


    【解决方案1】:

    将数据存储在可观察对象/对象中,并将其传递给模板本身,以便它可以读取它。

    你只链接了模板文件,你需要另一行来应用数据,例如

    &lt;div data-bind="template: { name: 'product-template', data: buyer }"&gt;&lt;/div&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-15
      • 1970-01-01
      • 2019-11-21
      • 1970-01-01
      • 2020-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多