我有包含复选框的html代码,我试图在克隆时获取这些值,但我没有得到正确的答案。 这是我的HTML代码:
<div id="divHideMeds">
<div class="copymeds">
<div class="form-group">
<label class=" control-label col-md-3">Times to give</label>
<div class="checkbox-list col-md-9">
<label class="checkbox-inline">
<input type="checkbox" id="breakfast" value="Breakfast"> Breakfast
</label>
<label class="checkbox-inline">
<input type="checkbox" id="lunch" value="Lunch"> Lunch
</label>
<label class="checkbox-inline">
<input type="checkbox" id="dinner" value="Dinner"> Dinner
</label>
<label class="checkbox-inline">
<input type="checkbox" id="bed" value="Bed"> Bed
</label>
</div>
</div>
<div class="add">
<button type="button" id="abc">Add More</button>
</div>
</div>
<div>
这是我的js代码:
$(".abc").click(function (e) {
var cloned = $(".copymeds:first").clone(true).appendTo('#divHideMeds');
});
我试图获取这样的复选框值:
$('.copymeds').each(function () {
arr.push({
forBreakfast:$("#breakfast",this).val(),
forLunch:$("#lunch",this).val(),
forDinner:$("#dinner",this).val(),
beforeBed:$("#bed",this).val(),
});
});
这里我有复选框的问题只有剩余的数据才会完美。我的问题是我只获得了第一个克隆值,但没有获得多个克隆数据复选框值。请帮助我如何获取复选框值数据我们还有2个克隆。
答案 0 :(得分:1)
您的网页上有重复的ID(克隆后)。确保你要么使它们与众不同(比如,通过为每个添加索引)或将它们交给类。然后你就可以选择更多的那个,否则它只选择它们中的第一个(应该是唯一的!)。
<label class="checkbox-inline">
<input type="checkbox" id="breakfast" value="Breakfast"> Breakfast
</label>
<label class="checkbox-inline">
<input type="checkbox" id="lunch" value="Lunch"> Lunch
</label>
<label class="checkbox-inline">
<input type="checkbox" id="dinner" value="Dinner"> Dinner
</label>
<label class="checkbox-inline">
<input type="checkbox" id="bed" value="Bed"> Bed
</label>
因此,有问题的是:breakfast
,lunch
,dinner
和bed
。他们都被克隆了。
答案 1 :(得分:0)
var div = $(".relation1:first").clone()
.appendTo("div.relationdiv");
div.find('select option:selected').attr('selected', false);
div.find("input").val("");
div.first().find("input radio:checked").prop('checked', true);
div.find('input:radio').attr('checked',false);