【发布时间】:2011-02-07 10:44:45
【问题描述】:
我目前正在为列表应用程序构建一个非常动态的表,它基本上将通过 AJAX 执行基本的 CRUD 功能。
我想做的是将视觉设计和 javascript 分离到我可以在不触及 JS 端的情况下更改设计端的程度。这仅适用于设计大致相同的情况(我想将其用于快速原型制作)
这是一个例子。
<table>
<tr><td>record-123</td><td>I am line 123</td><td>delete row</td></tr>
<tr><td>record-124</td><td>I am line 124</td><td>delete row</td></tr>
<tr><td>record-125</td><td>I am line 125</td><td>delete row</td></tr>
<tr><td>add new record</td></tr>
</table>
现在,当我添加一条新记录时,我想插入一行新的html,但我宁愿不把这个html放到javascript文件中。
我正在考虑在页面上,靠近桌子的地方创建这样的一行。
<tr style='visble:none;' id='template-row'><td>record-id</td><td>content-area</td><td>delete row</td></tr>
当我来添加新行时,我在页面中搜索带有 id=template-row 的标签,然后抓取它,对其进行字符串替换,然后将其放在正确的位置页面。
只要设计没有彻底改变,并且我保持占位符字符串不变,这意味着可以快速修改设计而无需接触 js。
任何人都可以就这样的方法提供任何建议吗?
【问题讨论】:
-
一定要去看看像 John Resig 的模板系统。这些通常解决了很多您不必担心的问题。
-
你为什么不做你提到的事情并在附近克隆一个 HTML 片段?无论您的页面如何更改,您都需要在某处进行更改:-)
标签: javascript jquery html ajax dom