所以这是我的情况。我有一个无序列表和一个列表中的一组输入和一个按钮,可以克隆这些输入中的4个。由于数据来自后端,可以有一个这个列表集或1000.所以我想动态地给列表中的每个输入的名称属性基于列表索引号,并找出一种方法来做到这一点克隆的投入也。如果你看类pm-providerNum我正在做类似于提供者名称的东西,所以它基于多少个列表。如果我添加更多列表提供者名称自动更改。返回到名称,对于li号码1,除了动态创建的输入之外的每个输入。每个输入名字会是这样为克隆输入提供输入“名称”属性,即在列表中
像添加位置动态输入,输入的名称将是:
<input type="text" name="p-address-0-dynamic#[dynamicnumber]" class="pm-
psubmit" placeholder="First Name" required="">
等.... dynamicnumber是说,新创建投入的数目。 因此,如果没有额外的位置被添加到providor 1 /索引1,通过 动态输入中的每个输入的名称为:
<input type="text" name="p-address-0-dynamic#[0]" class="pm-psubmit"
placeholder="First Name" required="">
如果我添加一个额外的位置。那些输入将名称将是
<input type="text" name="p-address-0-dynamic#[1]" class="pm-psubmit"
placeholder="First Name" required="">
上列表2 /索引2
<input type="text" name="p-address-1-dynamic#[0]" class="pm-psubmit"
placeholder="First Name" required="">
如果我添加一个额外的位置。这些投入将名称将是
<input type="text" name="p-address-1-dynamic#[1]" class="pm-psubmit"
placeholder="First Name" required="">
我花了一些时间来创建这个问题,它可能是混乱的,希望你们得到了什么,我想说的。我尝试了许多不同的方式来取得成功。希望我能得到一些启发
$('.pm-providerNum').each(function (index) {
$(this).html('Providor ' + (index + 1));
});
$("div.pm-providor-first-wrap").each(function (index) {
$(this).find('input').each(function() {
$(this).attr('name', $(this).attr('name')+ '-' + index);
})
});
$(document).on("click", ".pm-add-loc-Class", function() {
var $sect = $(this).closest(".pm-loc-section");
$sect.find(".pm-loc-inputWrapper").eq(0).clone().show().insertBefore($sect.find(".pm-loc-controls")).find('input').val('');
});
<!DOCTYPE html>
<html>
<head>
\t <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
\t </script>
\t <title></title>
</head>
<body>
\t <div class="col-sm-12 pm-submitProvidor">
\t \t <ul>
\t \t \t <li>
\t \t \t \t <div class="">
\t \t \t \t \t <h4><span class="pm-providerNum"></span></h4>
\t \t \t \t \t <div class="pm-providor-first-wrap">
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-first_name" placeholder="First Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-middle_name" placeholder="M" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-last_name" placeholder="Last Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dob" placeholder="Date of birth" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_num" placeholder="Personal Phone #" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_email" placeholder="Personal Email" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-degree" placeholder="Degree" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-d_date" placeholder="Date" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dobe" placeholder="Data of board exam" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-nri_num" placeholder="NRI #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-prim_spec" placeholder="Primary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-sec_spec" placeholder="Secondary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_name" placeholder="Practice name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_num" placeholder="Practice Phone #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t \t <div class="row" style="padding-left:15px; padding-right:15px;">
\t \t \t \t \t \t <div class="pm-loc-section">
\t \t \t \t \t \t \t <div class="pm-loc-inputWrapper">
\t \t \t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Practice Physical Address" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="City" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="State" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Zip" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-4"></div>
\t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="pm-loc-controls text-right">
\t \t \t \t \t \t \t \t <input class="pm-add-loc-Class" type="button" value="+ Add Another Location">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t </div>
\t \t \t </li>
\t \t \t <li>
\t \t \t \t <div class="">
\t \t \t \t \t <h4><span class="pm-providerNum"></span></h4>
\t \t \t \t \t <div class="pm-providor-first-wrap">
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-first_name" placeholder="First Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-middle_name" placeholder="M" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-last_name" placeholder="Last Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dob" placeholder="Date of birth" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_num" placeholder="Personal Phone #" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_email" placeholder="Personal Email" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-degree" placeholder="Degree" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-d_date" placeholder="Date" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dobe" placeholder="Data of board exam" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-nri_num" placeholder="NRI #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-prim_spec" placeholder="Primary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-sec_spec" placeholder="Secondary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_name" placeholder="Practice name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_num" placeholder="Practice Phone #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t \t <div class="row" style="padding-left:15px; padding-right:15px;">
\t \t \t \t \t \t <div class="pm-loc-section">
\t \t \t \t \t \t \t <div class="pm-loc-inputWrapper">
\t \t \t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Practice Physical Address" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="City" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="State" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Zip" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-4"></div>
\t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="pm-loc-controls text-right">
\t \t \t \t \t \t \t \t <input class="pm-add-loc-Class" type="button" value="+ Add Another Location">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t </div>
\t \t \t </li>
\t \t \t <li>
\t \t \t \t <div class="">
\t \t \t \t \t <h4><span class="pm-providerNum"></span></h4>
\t \t \t \t \t <div class="pm-providor-first-wrap">
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-first_name" placeholder="First Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-middle_name" placeholder="M" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-last_name" placeholder="Last Name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dob" placeholder="Date of birth" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_num" placeholder="Personal Phone #" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-personal_email" placeholder="Personal Email" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-degree" placeholder="Degree" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-d_date" placeholder="Date" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-dobe" placeholder="Data of board exam" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-nri_num" placeholder="NRI #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-prim_spec" placeholder="Primary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-sec_spec" placeholder="Secondary Speciality" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_name" placeholder="Practice name" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t <input class="pm-psubmit" name="p-practice_num" placeholder="Practice Phone #" required="" type="text">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t \t <div class="row" style="padding-left:15px; padding-right:15px;">
\t \t \t \t \t \t <div class="pm-loc-section">
\t \t \t \t \t \t \t <div class="pm-loc-inputWrapper">
\t \t \t \t \t \t \t \t <div class="row">
\t \t \t \t \t \t \t \t \t <div class="col-md-3">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Practice Physical Address" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="City" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-1">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="State" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-2">
\t \t \t \t \t \t \t \t \t \t <input class="pm-psubmit" placeholder="Zip" required="" type="text">
\t \t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t \t \t <div class="col-md-4"></div>
\t \t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t \t <div class="pm-loc-controls text-right">
\t \t \t \t \t \t \t \t <input class="pm-add-loc-Class" type="button" value="+ Add Another Location">
\t \t \t \t \t \t \t </div>
\t \t \t \t \t \t </div>
\t \t \t \t \t </div>
\t \t \t \t </div>
\t \t \t </li>
\t \t </ul>
</div>
</body>
</html>
我没有在你的代码看到你曾经设置'name'属性,所以我并不清楚是什么你在问或问题是什么。你问的是如何按照你描述的方式设置'name'属性?到目前为止,你有什么尝试,如果有的话? –
@DrewG是的,我想动态添加不在HTML中,因为列表可以基于客户端的很多或更少。我的尝试很混乱,并打破了克隆。我想给一个干净的片段。对不起 –
我建议你找到一个更好的方式来处理数据集,而不是给每个单元格一个唯一的ID。如果你正在使用php来处理这个问题,那么总是有一种方法来处理动态添加的数据,只需要指定'name =“myfield []”''类似数组的语法,可能是将行ID存储在隐藏表单字段中,与'name =“id []”'或类似。 – James