Javascript 我想使用JQuery克隆两个输入字段
我正在尝试创建一个表单,用户可能希望在其中动态添加两个输入字段,该表单链接到validate JQuery插件Javascript 我想使用JQuery克隆两个输入字段,javascript,jquery,validation,Javascript,Jquery,Validation,我正在尝试创建一个表单,用户可能希望在其中动态添加两个输入字段,该表单链接到validate JQuery插件 $('.addnote').on("click",function(){ countnotes++; var newnote = $(".notes:first").clone(); newnote.find('input:file').val(""); newnote.find('input:text').val(""); var oldind
$('.addnote').on("click",function(){
countnotes++;
var newnote = $(".notes:first").clone();
newnote.find('input:file').val("");
newnote.find('input:text').val("");
var oldindexinput = countnotes-2;
var newindexinput = countnotes-1;
var attachement = newnote.find('#Justificatif'+oldindexinput+'Attachment');
attachement.attr('id','Justificatif'+newindexinput+'Attachment');
attachement.attr('name','data[Justificatif]['+newindexinput+'][attachment]');
var motif = newnote.find('#Justificatif'+oldindexinput+'Motif');
motif.attr('id','Justificatif'+newindexinput+'Motif');
motif.attr('name','data[Justificatif]['+newindexinput+'][motif]');
newnote.find('input:text[readonly]');
var firstnoteid = $(".notes:first").attr('id');
newnote.attr('id','notes'+countnotes);
newnote.attr('style','');
newnote.insertBefore('#'+firstnoteid).hide();
newnote.slideDown();
});
这是Html代码
<input name="data[Justificatif][0][attachment]" type="text" readonly placeholder="Feuille de support" required>
<input name="data[Justificatif][0][motif]" placeholder="Motif de dépenses" class="input-medium" maxlength="255" type="text" id="Justificatif0Motif" required>
我的代码的问题是它克隆了验证状态以及新的输入字段,我想去掉它
多谢各位
我头脑中的一些想法(基于我正在引用的一个类似项目):
- 您能否确认新输入字段的id绝对是唯一的。我看到您正在调用“newnote.attr('id','notes'+countnotes);”,但是您能确认html是否已正确更改吗
- 如果id是唯一的,请尝试取消连接并重新连接验证引擎。(在我的代码中,每次发生更改时,我都会删除所有内容并重新创建表单,然后重新调用jQuery($('form[name$=“config_form”]”)。validationEngine('attach');)
class='required'
应用于表单提交期间验证的元素。
如果您要克隆的元素确实定义了class='required'
,那么您只需在克隆后将其删除即可
var newnote = $(".notes:first").clone();
newnote.removeClass('required');
举个例子:如果有更多信息,回答您的问题可能会更容易。例如,在页面的HTML中(通过firebug之类可以处理动态HTML的东西查看),新输入字段的确切ID是多少?如果您的问题是新字段也是必需的,那么这应该可以为您解决。我将您的问题解释为“此字段被标记为无效,即使其内容有效”。您的建议实际上帮助我摆脱了验证状态。克隆后,我必须删除两个类“state error”和“state success”。newnote.find('.input.text.required').removeClass('state-error');newnote.find('.input.text.required').removeClass('state-success');newnote.find('.input.input file').removeClass('state-error');newnote.find('.input.input file').removeClass('state-success');