我想设置一个自动递增和递减值的计数器

时间:2016-04-29 09:53:35

标签: dom

我想通过点击添加字段按钮设置自动++名称的值,例如此Email1 Email2等等,当我点击删除按钮时,它应该 - 电子邮件的反向值,如Email2 Email1以下我在使用代码

<div class="input_fields_wrap">
<div class="form-group">
<label>Email</label>
 <button class="add_field_button">Add More Fields</button>
<input type="text" class="form-control" name="Email"  value="<?php echo htmlspecialchars($team->email);?>" />
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
var max_fields      = 20; //maximum input boxes allowed
var wrapper         = $(".input_fields_wrap"); //Fields wrapper
var add_button      = $(".add_field_button"); //Add button ID

var x = 1; //initlal text box count
$(add_button).click(function(e){ //on add input button click
    e.preventDefault();
    if(x < max_fields){ //max input box allowed
        x++; //text box increment
        $(wrapper).append('<div><input type="text" name="Email"/><a href="#" class="remove_field">Remove</a></div>'); //add input box
    }
});

$(wrapper).on("click",".remove_field", function(e){ //user click on remove text
    e.preventDefault(); $(this).parent('div').remove(); x--;
})
});
 </script>

电子邮件是文本字段的名称,我想增加或减少此名称

1 个答案:

答案 0 :(得分:0)

刚刚更改了以下代码:

<input type="text" class="del" id="' + name + '"/>

$(".del").last().parent('div').remove();

它将始终删除最后一个元素。

以下是工作代码只需设置文本框的值:

$(document).ready(function() { var max_fields = 20; //maximum input boxes allowed var wrapper = $(".input_fields_wrap"); //Fields wrapper var add_button = $(".add_field_button"); //Add button ID var x = 1; //initlal text box count $(add_button).click(function(e){ //on add input button click e.preventDefault(); if(x < max_fields){ //max input box allowed x++; //text box increment var name = "Email" + x; $(wrapper).append('<div><input type="text" class="del" id="' + name + '"/><a href="#" class="remove_field">Remove</a></div>'); //add input box } }); $(wrapper).on("click", ".remove_field", function (e) { //user click on remove text var removeLastName = "Email" + x; e.preventDefault(); $(".del").last().parent('div').remove(); x--; }) });