下划线 JS - 重新编号模板呈现的元素属性
underscore js - renumber template rendered element attributes
>我有一个表单,能够拥有无限数量的用户添加输入。
例如,假设一个带有"添加参考"部分的工作申请。有一个"+"按钮,以及任何已添加的引用旁边的"删除"。
下面是一个示例模板
<script type="text/template" id="referenceTmpl">
<div>
<h2>Reference No. <%= index %></h2><a id="removeRef<%= index %>">Remove</a>
Name: <input type="text" name="references[<%= index %>].name" />
Email: <input type="text" name="references[<%= index %>].email" />
(...)
</div>
</script>
当任何"参考"被删除时,我想重新编号其他"参考"。由于表单输入可能已经包含未保存的数据,因此我需要在不完全重新呈现模板的情况下执行此操作。我想以一种可销售的方式(一种不需要每个输入太多额外代码的方式)来做到这一点,因为该解决方案可以在更复杂的应用程序中使用。
随意假设我正在使用jQuery,如果解决方案可以从中受益。
有什么想法吗?
在不入侵代码的情况下做这种事情的最佳方法是使用模型(列表)作为所谓的"引用"。
您应该尝试将 Backbone.js 与 Underscore.js 结合使用:主干.js文档
有一个 TODO 示例应用程序可以完全按照您的要求执行:
- 应用程序代码细分
- 示例应用程序
设置可能需要一些时间,但是完成后,您将更快地完成工作。
相关文章:
- 锚点元素的href属性自动更改
- 如何使用jquery迭代具有相同属性的html元素并查找onclick事件
- 带有填充属性的SVG矩形显示在包含元素的上方插入框阴影
- 通过id和class属性获取元素
- 如何通过HTML+CSS中的另一个元素Selector更改元素的属性值
- 如何正确引用传递到淘汰中的当前元素的属性.JS
- javascript来显示元素属性
- 自定义HTML元素属性未显示-Web组件
- 如何使用element.myobj.prop等具有对象属性的元素
- 将特定属性动态添加到元素中
- Javascript获取具有不同id的文件数's来自没有多个属性的文件输入元素
- 为什么样式属性不适用于使用DOMParser创建的元素
- .querySelectorAll如何只获取具有所有属性的元素
- 如何使用jQuery按数据日期属性选择元素
- 使用数据属性将HTML数据复制到另一个元素
- JQuery:使用clone()生成的元素不采用原始的事件属性
- 价格滑动过滤器-隐藏父属性元素
- 未捕获的类型错误:不能读取属性'元素不存在
- 将信息存储在变量与数据属性元素中
- 添加HTML5 DATA属性元素存储在Javascript变量