问题标签 [jsrender]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - JsRender - 如何从模板内渲染模板?
如何从 JSRender 的模板中渲染模板?在之前的 jquery 模板中,我可以使用
{{tmpl(Languages) "#languageTemplate"}}
在 JSRender 中,我可以在条件语句和循环中找到模板组合示例。我想独立调用模板。
jsrender - 布局模板的jsrender问题
我下载了最新版本的jsRender,发现布局模板不“受支持”。我以前用
但是在快速查看 jsRender js 代码后,我发现在最新版本中,“Layout”变量重命名为“isLayout”。我试过这个
但没有运气。嵌套布局模板呈现为普通模板,并且由于数据对象未被识别为列表类型,因此我得到了“做某事”。
有谁知道我该如何解决这个问题?当然我想避免回滚到以前的版本。
谢谢
jquery - JSRender - 动态更改模板
我正在使用 JSRender 来呈现模板。
我在演示中使用第一个示例-
我需要的是在运行时更改模板。也就是里面的<div>
内容<script id=movieTemplate">
谁能帮我解决这个问题。
感谢您分享您的智慧。
jquery-mobile - jquery mobile listview的autodividersSelector不起作用
我正在尝试使用 jquery-mobile 列表视图的 autodividersSelector 选项,如jquery-mobile 文档的列表视图部分的“Autodividers”部分中所述。
该列表呈现良好,但没有任何分隔符。分配给 autodividersSelector 的函数永远不会被调用。
这里还有一些其他的复杂性,比如 jsrender 等,所以我将它们原封不动地保留下来,但你会在下面看到它们,我不认为它们是问题的一部分。我错过了什么?
相关代码如下:
jquery - jQuery Mobile 中的历史是如何工作的?(特别是在涉及后退按钮时)
jqm 上的这个历史事件让我发疯......每次我认为我有解决方案时,它都会从我的掌握中滑落。
事情是这样的:我正在开发一个动态生成的内容应用程序。这些页面是从 JSON 文件生成并使用 jsRender 呈现的。它们在第一个请求时被加载到 DOM 中(我为此使用了 jqm 多页模板),然后,在下面,它们被简单地使用指向该 #id 的 changePage 调用(我从中获得灵感的模型是这个: http: //jquerymobile.com/test/docs/pages/page-dynamic.html)。一切正常,但一段时间后 DOM 变得过于拥挤并减慢了我的系统(尤其是我加载应用程序的智能手机)。解决方案是在用户离开页面后立即取消页面,就像在这个项目中一样: http ://roughlybrilliant.com/jsrender_json_apis_and_jquery_mobile
它使用
操作说明。无论如何,我第一次尝试是使用 jQuery 提供的 .remove() 指令,而不是使用它:
因此,无论何时隐藏页面,它都会从 DOM 中删除。因此,假设我们在我的页面中点击了一个链接以转到另一个,起始页面被删除并加载新页面。这里我有一个后退按钮,所以当我点击它时,它会让我回到刚刚删除的页面上一步。现在在我的代码中,我有一个函数可以再次构建页面并显示它。只是为了大致了解我的应用程序是如何工作的。
现在假设我可以在我的链接树中更深一层:假设我在 lvl 2 并转到 lvl 3 然后回到 2。在这种情况下,lvl 2 页面没有后退按钮,即使在代码中我将其设置为存在。
这是 jsRender 中的模板:
我认为这是因为删除指令(或 $.mobile._bindPageRemove)也在从历史记录中删除页面。所以我更改并使用 empty() 指令来清空 div,然后用什么重新填充它我需要...没有成功。如果我在访问后删除页面,我只能返回树中的 1 级。
我的目标是绕过我的应用程序动态加载页面,一旦我离开它们,我只想在不改变历史记录的情况下将它们从 DOM 中删除,所以当我返回并重新加载页面时,我总是可以使用后退按钮这页纸。
所以我的问题是:历史在 jqm 中是如何运作的?当 jqm 用它的代码增强页面时,它是否会为它应该指向哪个页面的后退按钮添加任何指示?如何强制页面显示后退按钮并指向历史记录中的上一个元素?是否有可能如果我从 DOM 中删除某些内容,它也不会从历史记录中删除?
感谢您的帮助,希望我的担忧足够清楚...
javascript - 带有 JsViews 的 JsRender - 视图为空或不是对象
我正在尝试在向导中实现一个真正的 JsViews 基本示例,包括 jquery.observable 和 jquery.views
但我得到这个错误x-browser。“视图为空或不是对象”。中断发生在 jsRender 中,但我有其他模板代码使用 jsRender 工作正常,它只包含 jquery.observable $ jquery.views。有没有人有一个使用 jsRender / jsViews 的简单绑定示例的 jsfiddle。不需要详细视图,只是从模型中删除项目的最简单示例。
javascript - JSRender 条件语句
下面的条件 (if) 语句返回此浏览器错误:“Uncaught TypeError: Object 46 has no method 'replace'” in the jsrender.js file on line 463(在 Chrome 和 IE8 中)
**2012-06-10 更新---对不起,在我原来的帖子中,我过于简化了我的场景,并且错误不存在。我已经更新了代码(如下)以更准确地表示我看到的错误。如果您从该代码中删除 {{if 1==1}} 行,它将完美运行。这条线完好无损,我得到了上述错误。
jquery - yii RegisterScript, id 和 type
我正在尝试在 yii 应用程序上使用jsrender。我需要注册一个这样的脚本:
通常我使用 CClientScript::registerScript(); 但它不允许指定 ID 或类型。谁能提出一个干净的方法来做到这一点?
javascript - jsrender不在模板中显示函数返回
我有两个返回简单字符串的函数。两者都已注册。
我的 jsrender 模板调用了这两个函数。解析日期函数被调用并按原样返回。第二个函数被调用并返回一些东西,但 jsrender 没有捡起它?不知道会发生什么,但它完全被忽略了。
任何人都知道为什么这不渲染?我唯一能想到的是 ajax 调用,但是在调试模板时,直到函数返回一些东西才会继续。所以我对正在发生的事情感到迷茫。
javascript - 如何遍历 jsRender 模板中的 JSON 数组?
我有这个 HTML 和 jsRender 模板:
我有这样的javascript(jQuery):
有些人可能会看到,这是 John Papa 的一个例子。也就是说,我稍微修改了一下。但它不能正常工作。原因是 jsRender 期望 Json 中有一个根对象,如 Johns 示例中 {{for}} 是 {{for people}} 并且数据对象如下所示:
在我的 ASP.NET MVC 控制器中,返回的 Json 不带有根对象。我怎样才能使它工作?更改 Json 格式(我该怎么做?)?还是我在我的 jsRender 代码中做错了什么?
提前致谢!