これは私のHTMLDomです
<dd>
<div class="Addable Files">
<div style="margin:5px;">
<select name="Kind" id="kind">
<option value="1" >K1</option>
<option value="2" >K2</option>
<option value="3" >K3</option>
</select>
<div class="customfile">
<span aria-hidden="true" class="customfile-button button">Browse</span>
<input type="file" name="Files" class="fileupload customfile-input">
</div>
<select name="yap">
<option>1</option>
<option>2</option>
<option>3</option>
</select>
</div>
</div>
<input type="button" value="new" style="margin-top:5px;" class="AddNewE button red" id="AddFiles">
</dd>
そして私のスクリプト:
//Add new Addable div
$('.AddNewE').click(function () {
var Target = $('.Addable.Files:first');
var CloneTarget = $(Target).clone();
CloneTarget.insertAfter('.Addable.Files:last');
$(Target).find('select').each(function () {
$(this).css('color', 'red');
});
});
したがって、[追加]ボタンをクリックすると、最初の2つの選択(最初のdivの2つの選択)が赤になり、他のすべての選択は変更されないことを期待していますが、奇妙な動作が見られます。 2番目を除いて赤である、私Target
は最初であると思いますdiv
、そしてまた私はターゲットのSelect
要素を選択します、それでなぜすべてselect
が赤であるのですか?私の問題はどこにありますか?
編集
スクリプトが間違っていることをお詫びしますが、これは私の実際のスクリプトです。
//Add new Addable div
$('.AddNewE').click(function () {
var Target = $('.Addable.Files:first');
var CloneTarget = $(Target).clone();
CloneTarget.insertAfter('.Addable.Files:last');
$(CloneTarget).css('color', 'green');
$(Target).find('select').each(function () {
$(this).css('color', 'red');
});
});