从 JavaScript 文件中挖空 JS 模板


knockout js template from javascript file

>我正在向一个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 函数中打印出该模板文件?

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

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

<div data-bind="template: { name: 'product-template', data: buyer }"></div>