我有一个带有几个选择框的“类别树”。当您为要包含的项目选择类别时,它会加载子类别并将它们显示在下一个选择框中。
在.submit()
表单上,我让它.category
从 DOM 中删除第一个。一旦剩下最后一个,它将name
属性赋予 last .category
。
当页面上有多个项目表单时,就会出现扭曲。我所做的是.item
使用 jQuery 遍历 s .each()
,然后从那里使用 jQuery.find()
查找项目中的类别。
我正在使用的 While 循环创建了一个无限循环。我曾经console.log()
在脚本的整个执行过程中输出我的变量,我认为不会.find()
返回我认为的内容。
html:
<div class="item">
....
<div class="category"></div>
<div class="category"></div>
....
</div>
javascript:
$('#transaction-form').submit(function(){
$('.item').each(function(){
var index = $(this).index();
var category = $(this).find('.category');
while (category.length > 1){
$($(category)[0]).parent().remove();
}
$(category[0]).attr('name', 'form-' + index.toString() + '-category');
});
});
category.length
在 while 语句中调用返回 2,这是它应该的。我不认为的返回值.find()
是一个 jQuery 对象。