Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 克隆复选框字段后,是否使用jQuery获取(并更改)其名称?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 克隆复选框字段后,是否使用jQuery获取(并更改)其名称?

Javascript 克隆复选框字段后,是否使用jQuery获取(并更改)其名称?,javascript,jquery,html,Javascript,Jquery,Html,我有一些代码,我正试图修改,以便获得复选框名称内的数字 目标是在点击几下后,代码变成这样 <input type="checkbox" name="UPDATE_METHOD[0][]" value="Email" checked="">Email <input type="checkbox" name="UPDATE_METHOD[0][]" value="SMS" checked="">SMS <input type="checkbox" name="UPDA

我有一些代码,我正试图修改,以便获得复选框名称内的数字

目标是在点击几下后,代码变成这样

<input type="checkbox" name="UPDATE_METHOD[0][]" value="Email" checked="">Email
<input type="checkbox" name="UPDATE_METHOD[0][]" value="SMS" checked="">SMS

<input type="checkbox" name="UPDATE_METHOD[1][]" value="Email" checked="">Email
<input type="checkbox" name="UPDATE_METHOD[1][]" value="SMS" checked="">SMS

<input type="checkbox" name="UPDATE_METHOD[2][]" value="Email" checked="">Email
<input type="checkbox" name="UPDATE_METHOD[2][]" value="SMS" checked="">SMS
我正在尝试获取上次更新\u方法[0][]的编号,将其指定为变量,然后添加1

这里有一个JSFIDLE:

感谢您提供的任何帮助…

试试这个

$(document).ready(function(){
      $(".clone_trigger_button_1").click(function () {
          var total = $('[name^="UPDATE_METHOD"]').length;
          var index = Math.round(total / 2);
          $('.clone_replicate_this_div_1').last().clone().insertBefore(".placer_1");
          $('input.cl:last').val('');
          $('.clone_replicate_this_div_1').last().find("input[type='checkbox']").prop("name","UPDATE_METHOD["+index+"][]");
          event.preventDefault();  
      });
});

HTML:


这个解决方案很奇怪,但对我来说一直有效

$(document).ready(function(){
var counter = 1 ;
$(".clone_trigger_button_1").click(function () {
    var newObject = '<div class="clone_replicate_this_div_1"><input type="checkbox" name="UPDATE_METHOD[' + counter + '][]" value="Email" checked="">Email<input type="checkbox" name="UPDATE_METHOD[' + counter + '][]" value="SMS" checked="">SMS</div>' ;
    $(newObject).insertBefore(".placer_1");
    counter++ ;
    event.preventDefault();
});
});
$(文档).ready(函数(){
var计数器=1;
$(“.clone_触发器_按钮_1”)。单击(函数(){
var newObject='EmailSMS';
$(newObject).insertBefore(“.placer_1”);
计数器++;
event.preventDefault();
});
});

太棒了!这太棒了,非常感谢:-)这是修复我一天来一直在做的东西的最后一部分!
$(document).ready(function(){
      $(".clone_trigger_button_1").click(function () {
          var total = $('[name^="UPDATE_METHOD"]').length;
          var index = Math.round(total / 2);
          $('.clone_replicate_this_div_1').last().clone().insertBefore(".placer_1");
          $('input.cl:last').val('');
          $('.clone_replicate_this_div_1').last().find("input[type='checkbox']").prop("name","UPDATE_METHOD["+index+"][]");
          event.preventDefault();  
      });
});
<div class="placer_1"></div>
<a href="#" class="clone_trigger_button_1">Clone row 1</a>
<script type="text/template" id="template">
<div class="clone_replicate_this_div_1">
    <input class="email" type="checkbox" checked="checked" />
    <label class="email_label">Email</label>
    <input class="sms"   type="checkbox" checked="checked" />
    <label class="sms_label">SMS</label>
</div>
</script>
$(document).ready(function(){
    var html = $('#template').html(),
        placer = $( '.placer_1' ),
        index = 0,
        createInputs = function(){
            var div = $( html ),
                name = 'UPDATE_METHOD[' + index +  '][]';
            $( '.email', div ).attr( 'name', name )
                              .attr( 'id', 'update_method_email_' + index );
            $( '.sms',   div ).attr( 'name', name )
                              .attr( 'id', 'update_method_sms_' + index );
            $( '.email_label', div )
                              .attr( 'for', 'update_method_email_' + index );
            $( '.sms_label',   div )
                              .attr( 'id', 'update_method_sms_' + index );
            placer.before( div );
            ++index;
            console.log( index );
        };
    $(".clone_trigger_button_1").click(function ( evt ) {
        createInputs();
        evt.preventDefault();
    });
    createInputs();
});
$(document).ready(function(){
var counter = 1 ;
$(".clone_trigger_button_1").click(function () {
    var newObject = '<div class="clone_replicate_this_div_1"><input type="checkbox" name="UPDATE_METHOD[' + counter + '][]" value="Email" checked="">Email<input type="checkbox" name="UPDATE_METHOD[' + counter + '][]" value="SMS" checked="">SMS</div>' ;
    $(newObject).insertBefore(".placer_1");
    counter++ ;
    event.preventDefault();
});
});