長い間ここにいて、とてもシンプルに見えますが、やりたいことができません。
各本には、ラジオボタンを使用して選択される「getOrRequest」値があります。divが複製されるたびに、本が独自のgetOrRequest値を持つように、名前の値を変更する必要があります。私はついに複製を取り下げましたが、正しい入力の名前を変更することは協力的ではありません。
私を本当に悩ませているのは、それが機能することですが、私が取得しようとしている名前の値は変更されていません。配列のどの部分が変更されているかと関係がありますが、必要な値、つまり最後の2つのgetOrRequest名を取得できません。
私がここで苦労していることの実例。
私のJS機能:
function addAnotherPost(){
var bookInfo = document.getElementById('bookInformation');
var copyDiv = document.getElementById('addListing').cloneNode(true);
copyDiv.id = 'addListing' + idNumber;
bookInfo.appendChild(copyDiv);
var divID = 'addListing' + idNumber;
var newDiv = document.getElementById(divID);
var postType = document.getElementsByName("getOrRequest[]");
alert(postType[0].name + postType[1].name + postType[2].name + postType[3].name);
for(var i = 2; i < postType.length; i++){
postType[i].name = 'getOrRequest' + idNumber + '[]';
}
alert("got this far" + postType.length);
idNumber++;
}
HTMLの関連するチャンク:
<div id='addListing'>
<table class='aListing'>
<tr>
<td>
<label>
<input type='radio' name='getOrRequest[]' value='1' />
Request</label>
<label>
<input type='radio' name='getOrRequest[]' value='0' />
Offer</label>
</td>
[...]
</table>
</div>