Javascript jQuery简单克隆插件-更改输入名称格式
我正在使用简单的克隆插件。这是该插件的最新版本 到目前为止,它生成的输入名称如下Javascript jQuery简单克隆插件-更改输入名称格式,javascript,jquery,Javascript,Jquery,我正在使用简单的克隆插件。这是该插件的最新版本 到目前为止,它生成的输入名称如下 user[projects][0][name] user[projects][1][name] user[projects][2][name] 谁能告诉我如何生成这样的名称 user[projects_name][0][1] user[projects_name][1][1] user[projects_name][2][1] 我创建了一个jsfiddle,向您展示演示 我认为这是生成id的函数 // app
user[projects][0][name]
user[projects][1][name]
user[projects][2][name]
谁能告诉我如何生成这样的名称
user[projects_name][0][1]
user[projects_name][1][1]
user[projects_name][2][1]
我创建了一个jsfiddle
,向您展示演示
我认为这是生成id的函数
// append a initial number to elements id, if options[:nested] true, also assign a initial number to the element name
e.find("input, select").each(function(){
var old_id = $(this).attr("id");
$(this).attr("id", old_id+'_0');
if(option.nested == true) {
var old_name = $(this).attr("name");
var reg = /\[\w*\]$/;
var match = reg.exec(old_name);
var new_name = old_name.substr(0, match.index) + "[0]" + match[0];
$(this).attr("name", new_name);
}
})
$.fn.regenerate_names = function(number){
$(this).find("input, select").each(function(){
var old_name = $(this).attr("name");
var old_number = old_name.match(/.*\[(\d+)\]/)[1]; // find the last match
var old_number_index = old_name.lastIndexOf(old_number);
var new_name = old_name.substring(0,old_number_index) + number + old_name.substring(old_number_index+1);
$(this).attr("name", new_name);
});
};
这是插件的作者,我是pake007。我已经更新了插件以支持您的要求。 请在github上克隆最新版本的simple clone,对于您的问题,我认为您可以尝试以下代码:
<div class='project_group'>
<input id="user_projects_name" name="user[projects_name][1]" type="text" />
</div>
$(".project_group").simple_clone({
label: "Project Name ",
label_colon: true,
nested: true,
start: 1
});
user[projects_name][1][1]
user[projects_name][2][1]
user[projects_name][3][1]