我有以下代码:http://jsfiddle.net/stomp/a8vjg/
除了我需要将select字段的名称作为extras [0],然后添加下一个的extras [1]等等之外,一切都运行良好。
有人可以帮忙吗?
干杯, 史蒂夫
答案 0 :(得分:1)
首先,您应该使用" extras"来命名您的select元素。只... ...
<select name="extras">
然后使用
获取它elemenets = $('[name=extras]')
它将是一个可以通过extras [0],extras [1],.....等访问的数组
答案 1 :(得分:0)
克隆时你需要这样:
case "add":
var cnt=jqEl.parent().siblings().size();
var cloned=tag.clone();
$(cloned).find("input").val("")
.end()
.find('select').attr('name','extra['+cnt+']');
tag.after(cloned);
break;
检查工作fork(如果删除并添加,可能会重复)
没有重复项fiddle(如果删除节点,则无法确保序列号)
所以完美的解决方案可能是在[保存]按钮上添加ID,这里是solution
function save(e) {
multiTags.find("select").each(function(i){
$(this).attr('name','extras['+i+']');
});
var tags = multiTags.find("input.tag").map(function() {
return $(this).val();
}).get().join(',');
alert(tags);
return false;
}
答案 2 :(得分:0)
你的意思是:
case "add":
var newTag = tag.clone();
var i = $("#multi").find("select").length;
console.log(i);
newTag.find("select").attr("name", 'extras['+i+']');
tag.after(newTag.find("input").val("").end());
break;
请参阅:jsFiddle