jqueryを使用してラジオグループを複製しようとしています。私のクローニングコードは次のとおりです。jquery clone id update
$("#btnAddAnotherLocation").live("click", function(){
cloneIndexLocation++;
$("#clonedInputLocation0").clone()
.appendTo("#clonedInputsLocation")
.attr("id", "clonedInputLocation" + cloneIndexLocation)
.find("*").each(function(){
var id = this.id || "";
var match = id.match(regex) || [];
if(match.length == 5){
this.id = match[1]+(cloneIndexLocation);
}
}).end();
});
マイcloneDivの内容は次のとおりです。
はそれが厄介探しについて<div id="clonedInputLocation0" class="clonedInputLocation" style="display: none;">
<div class="formLocationWrapper">
<label class="labelRadioBlack labelContainsInput" for="locationInNear0">
<input name="locationInNearRadio[]" id="locationInNear0" value="" type="radio" />
In or near
</label>
<div class="inNearTextWrapper">
<input class="myWirrlMediumFormField" type="text" name="txtLocationInNear[]" value="" />
</div>
</div>
<div class="formLocationWrapper">
<label class="labelRadioBlack labelContainsInput" for="locationAnywhereIn0">
<input name="locationInNearRadio[]" id="locationAnywhereIn0" value="" type="radio" checked="checked" />
Anywhere in
</label>
</div>
<div class="" id="clonedInputLocationRemove0">
<a href="javascript: void(0);">Remove location</a>
</div>
</div>
申し訳ありませんが、それは私のエディタでたくさんクリーナー実際にあります。
問題は実際のコンテンツを複製することではなく、うまくいきます。問題は、ラジオグループ名をlocationInNearRadio [cloneIndexLocation]に更新し、IDとFOR属性の名前をlocationInNearcloneIndexLocationとし、cloneIndexLocationが次の増分である必要があることです。
このコードは、すべてのIDをclonedIndex番号に更新する選択フィールドのグループに対して機能しますが、何らかの理由で同じコードを取得してラジオグループIDを更新することさえできません。
乾杯
何をあなたの正規表現は次のようになり、あなたが文字列で1を使用して、番号をインクリメントまたは単にIDの末尾に「1」を追加していることを確信しているのでしょうか? jsFiddle.netのデモがはるかに役立つでしょう。 – Mottie