Javascript 更改select的值后复制div

Javascript 更改select的值后复制div,javascript,jquery,html,Javascript,Jquery,Html,更改此链接中的类似选择后,我尝试复制div: 我有[object]而不是我的列表:( 有什么想法吗 谢谢你试试这个:(): $(文档).ready(函数(){ 原始变量=$(“#dvCatGr”); $('#sctChambre').change(function(){ var total=parseInt($(this.val()); $('#dvCat').empty(); 对于(变量i=0;i

更改此链接中的类似选择后,我尝试复制div: 我有[object]而不是我的列表:( 有什么想法吗

谢谢你试试这个:():

$(文档).ready(函数(){
原始变量=$(“#dvCatGr”);
$('#sctChambre').change(function(){
var total=parseInt($(this.val());
$('#dvCat').empty();
对于(变量i=0;i
试试这个:():

$(文档).ready(函数(){
原始变量=$(“#dvCatGr”);
$('#sctChambre').change(function(){
var total=parseInt($(this.val());
$('#dvCat').empty();
对于(变量i=0;i
像这样的东西

$('#sctChambre').change(function() {
    var total = parseInt($(this).val());
    for (i = 0; i < total; i++) {
        $('#dvCat').after($('#dvCatGr').clone().attr('id', 'c' + i));
    }
});​
$('#sctChambre').change(函数(){
var total=parseInt($(this.val());
对于(i=0;i
像这样的东西

$('#sctChambre').change(function() {
    var total = parseInt($(this).val());
    for (i = 0; i < total; i++) {
        $('#dvCat').after($('#dvCatGr').clone().attr('id', 'c' + i));
    }
});​
$('#sctChambre').change(函数(){
var total=parseInt($(this.val());
对于(i=0;i
您正在向对象追加字符串?
var append_str=$(''.'dvCatGr').clone().appendTo('.dvCat');
temp_str=temp_str+append_str;
是的,这就是问题所在,但如果write append_str=“”,它会起作用(我复制了许多div)我不知道如何通过N次克隆一个div来做同样的事情你在给一个对象追加一个字符串?
var append_str=$('.#dvCatGr').clone().appendTo('.dvCat');
temp_str=temp_str+append_str;
是的,这是个问题,但如果write append_str=“”,它会起作用(我复制了很多div).我不知道如何通过N次克隆一个div来实现同样的效果噢,很好,谢谢,这几乎就是我要寻找的,但它只是累积的。也许我应该在for开始时删除所有div吗?你可以使用jQuery的.empty()如果您愿意,函数可以执行此操作。请记住,清空
#dvCat
元素也会删除您试图克隆的对象,因此您需要在删除它之前在某处保留它的副本。但实际上,您并没有将新副本放入
#dvCat
元素中。您是在该元素之后添加它们。因此
empty()
在这个例子中不太好用。很好,谢谢,这几乎就是我想要的,但它只是累积的。也许我应该在for开始时删除所有div吗?你可以使用jQuery的.empty()如果您愿意,函数可以执行此操作。请记住,清空
#dvCat
元素也会删除您试图克隆的对象,因此您需要在删除它之前在某处保留它的副本。但实际上,您并没有将新副本放入
#dvCat
元素中。您是在该元素之后添加它们。因此
empty()
这个例子不太好用。我有一个关于我选择的名称的问题,例如,我有许多选择的名称相同=sctAdulte,如何为每个选择分配唯一的名称?sctAdulte1 sctAdulte2 sctAdulte3..关于提交表单,使用相同的名称,我无法捕获所有帖子信息:(看看答案,上面写着
.attr(“id”,“dvCatGr”+i));
。这实际上就是这么做的,除了使用“id”属性而不是“name”。如果你想对name做同样的事情,那么只需将它改为
.attr({id:“dvCatGr”+i,name:“sctAdulte”+i}))
。或者更好的方法是,给他们所有人起一个名为
sceAdulte[]
(注意方括号的开合)。然后它们将作为数组传递。这至少适用于PHP。我假设它也适用于其他人。谢谢,但问题是名称sctAdulte是作为div子级的select的名称。使用此代码,它为div属性一个名称,并且不要修改selectMy错误的名称。
.attr(“id”,“dvCatGr”+I).children(“select”).attr(“name”、“sctAdulte”+i))。但同样,最好只给所有元素一个名称
sctAdulte[]
,然后您的服务器可能会将其作为数组接收。谢谢,这比我想象的要复杂:/div span select name=“sctAdulte”select name=“sctEnfant”select name=“sctBebe”即使select不是div的直接子级,我也尝试过children(“span”)。children(“select”),但它对我不起作用。在那之后,我没能将三个select克隆到每个跨度中,每个跨度有三个不同的名称,分别为1到5个sctAdulte0、sctEnfant0、sctBebe0、sctAdult1、sctEnfant1……我有一个关于我的select名称的问题,例如,我有许多select使用相同名称=sctAdulte,如何为每个select分配唯一的名称?sctAdulte1 sctAdulte2 sctAdulte3。。这是关于提交表单的,用同样的名字,我无法捕捉到所有的帖子信息:(看看答案,上面写着
.attr(“id”,“dvCatGr”+i))。这实际上就是这样做的,除了使用“id”属性而不是“name”。如果您想对name执行相同的操作,那么只需将其更改为
.attr({id:“dvCatGr”+i,name:“sctAdulte”+i})。或者更好的是,只需给他们所有人起一个名为
sceAdulte[]
(注意方括号的开合部分)。然后它们将作为数组传递。这至少适用于PHP。我认为它也适用于其他人。谢谢,但问题是名称sctAdulte是select的名称,它是该div的子级。使用此代码,它为该div指定了一个名称,并且不要修改selectMy Error的名称<代码>.attr(“id”,“dvCatGr”+i).子项(“sel