我正在尝试编码this bug的解决方法我已经用gem nested_form。不需要Ruby/Rails知识,这都是关于JavaScript的。Javascript - 删除重复条目
所以简而言之,当我的页面重新加载时,我有一些具有相同模型ID(在隐藏输入的值属性中)的重复字段。
编辑:添加有值50的非重复的输入,即不应修改
<tbody class="echange fields>
...
<input id="etude_echanges_attributes_0_id" type="hidden" name="etude[echanges_attributes][0][id]" value="42">
</tbody>
<tbody class="echange fields>
...
<input id="etude_echanges_attributes_1_id" type="hidden" name="etude[echanges_attributes][1][id]" value="42">
</tbody>
<tbody class="echange fields>
...
<input id="etude_echanges_attributes_2_id" type="hidden" name="etude[echanges_attributes][1][id]" value="50">
</tbody>
的2个第一输入具有值42只有最后一个是很好的,所述第一个是重复。所以基本上我需要一个代码扫描所有的id=".*attributes_x_id"
和他们的value
,只保留最后一个。
所以在我上面给的例子时,JavaScript应该检测...
<input id="etude_echanges_attributes_0_id" ... value="42">
<input id="etude_echanges_attributes_1_id" ... value="42">
...有42
相同的值,这意味着它们是重复
然后,它会删除除了最后一个。还有以下不应该被修改,因为它是唯一一个与模型ID值50
<input id="etude_echanges_attributes_2_id" ... value="50">
编辑:参数可以改变是
- 模型的标识符:什么是
_attributes
前
- 一个HTML ID:在
_attribute_xxx
- 型号ID的XXX,其对应于
input
的值:value="yyy"
(注意42和50只是一个例子,真正的有MongoDB的标识,看起来像5470b5075374611500040000)
我想要做什么:
- 查找
<input>
对应的副本相同的实例模型(参见上面) - 处理除最后一个操作外的所有操作:
- 提取
echanges
从_echanges_attributes_
- singularize它,所以它成为
echange
- 寻父通过其类“ECHANGE田”
- 从DOM
删除这个元素对于现在的一步,是我的一个问题是第n步°1。我不知道是否可以使用简单的jquery/css选择器来做到这一点?
哦,对不起,让我举一个更好的例子。我们需要按照他们的价值和他们的ID的一部分来匹配重复项目,但不是仅仅是ID –
@CyrilDD这仅仅是为“值”匹配添加的问题。 – Joseph
是的,但事先并不知道价值将会是42 ....可以是任何数字。这是数据库中条目的ID。 这里的变量参数是: 什么是'_attribute'之前的属性'_attribute_xxx_',值'value =“yyy”' –