gpt4 book ai didi

c# - 无法在现有页面中使用挖空模板

转载 作者:太空宇宙 更新时间:2023-11-03 13:31:07 25 4
gpt4 key购买 nike

我有一个简单的 knockout 模板,但因为它位于使用 knockout 的现有页面中,所以我的模板无法正常工作。我没有在页面上看到你好。任何建议都适用!谢谢,

代码片段

<script type="text/html" id="childtag-template">
<ul data-bind="template: { name: 'tag-template'}"></ul>
<div data-bind="template: { name: 'keyword-template'}"></div> <!-- new bit -->
</script>

模板

<script type="text/html" id="keyword-template">
hello
</script>

在页面的文档就绪事件中存在以下内容

页面加载中

<script type="text/javascript">
$(function () {
window.helper.Start(@Html.Raw(Json.Encode(Model)););
});

开始内容如下

启动方式

window.Helper= {
Start: function (x) {
var viewModel = Helper.XViewModel(x);
window.Helper.ViewModel = viewModel;
ko.applyBindings(viewModel);
...

当我可以成功加载模板时,我只需要一个直接从 knockout 示例中获取的简单表格,该表格允许添加和删除列表。我有这个独立工作但是当将标记和 js 放入现有文件时我得到 js 错误。

更新

我添加了以下更改(请参阅 viewModel.Keywords)。 Firefox 没有报告任何错误,但我没有在页面上看到我的问候语。

window.Helper = {
Start: function (x) {
var viewModel = Helper.XViewModel(x);
window.ArticleManagerHelper.ViewModel = viewModel;
ko.applyBindings(viewModel);

viewModel.Keywords = ko.observable(); // new line of code

我已经在模板中添加了以下内容

    <input type="text" data-bind="value: Keywords"/>

最佳答案

好的,这是我为让它工作所做的。

请注意,我使用了 json 的简化版本,因此我可以创建一个有效的 jsFiddle,但概念仍然相同。

<!--html -->
<div data-bind="template: { name: 'keyword-template', data: Article }"></div>

<!-- template -->
<script type="text/html" id="keyword-template">
<input type="text" data-bind="value: Keywords"/>
</script>
  1. 您在模板中定义了这两个部分,您需要将 html 中的绑定(bind)部分放在模板之外。除非我弄错了,它是某种嵌套模板并且缺少外部 html,否则很抱歉。
  2. 我需要指定要绑定(bind)的数据,即 data: Article

这是 jsFiddle 的链接:

http://jsfiddle.net/Yfu2Y/1/

关于c# - 无法在现有页面中使用挖空模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20525317/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com