0
用户输入值对。我需要复制最后一组并重新编号它们的ID。下面的函数运行,但新的div没有出现。我在杂草丛生的地方......谢谢你的帮助!克隆()不起作用(对我而言)
$('#addparm').click(function (event) {
event.preventDefault();
var maxSeq = $('#maxseq').attr("seq");
var lastDiv = $('#pct[' + maxSeq + ']').parent();
$('#maxseq').attr("seq", ++maxSeq);
var newDiv = $(lastDiv).clone(true);
$(lastDiv).after(newDiv);
$(newDiv).fadeIn('slow');
});
这里的HTML:
...
<div id="bkp[8]">
<input seq="8" id="pct[8]" name="pct" type="text" value="0.28" />
<input seq="8" id="amt[8]" name="amt" type="text" value="43.2" />
<input seq="8" id="use[8]" name="use" type="hidden" value="yes" />
</div>
<div id="bkp[9]">
<input seq="9" id="pct[9]" name="pct" type="text" value="0.31" />
<input seq="9" id="amt[9]" name="amt" type="text" value="41.4" />
<input seq="9" id="use[9]" name="use" type="hidden" value="yes" />
</div>
<input type="hidden" id="maxseq" seq="9" />
<a id="addparm" href="javascript:void(0)">Add</a>
这是真的。证明:http://jsfiddle.net/C2R8D/我改变了有问题的元素的id,以删除方括号,并在jQuery选择器中做了相同的更改。 – weir
这里证明你**可以**保留你的ID。只需在jQuery选择器中用两个反斜杠转义方括号即可.http://jsfiddle.net/8REPj/但是,@JAAulde是正确的,HTML4规范说这不是合法ID,所以可能建议更改ID格式。 – weir
是的,借助逃脱选择器,您可以在选择器中使用某些项目,这些项目最好不要混在一起。 IMO最好调整语法和方法。 – JAAulde