添加和更改复选框名称+更改时的标签

Adding and changing checkbox names + labels on change

本文关键字:标签 复选框 添加      更新时间:2023-12-18

这就是我正在使用的:

http://jsfiddle.net/VkYnQ/

目标是选择您想要的次数,然后选择时间,然后在'Copy to more dates?'下添加并显示时间。

目前,它有1个静态复选框,只是为了演示它应该如何工作。

因此,当每个工作日都有一个静态复选框0800时,这意味着你选择了一个时间,而这个时间目前是08:00。

如果将此时间更改为16:00,则复选框名称和标签应更改为1600。

如果选择2次,并选择第二次至20:00,则应在每个工作日的其他复选框旁边添加一个复选框,标签为"2000"

这是我尝试过的,为了让更改生效,所以如果你像上面提到的那样从08:00更改为16:00,复选框就会出现:http://jsfiddle.net/epCbv/1/

这是有效的,但我想不出一种方法使它与我的代码一起工作。

希望任何人都能帮助我,如果可能的话(2天),我会奖励+300声望/赏金。

我并不打算完成所有的工作,但我更新了您的代码,使其接近您想要的目标。代码很脏,我没有花很多时间,但它仍然可以理解。

如果这真的很好,请告诉我:)

查看结果:http://jsfiddle.net/adrieng/VkYnQ/3/

Nota Bene:更新内容没有链接到第一个select.timeclock。因此,例如,选择显示至少2次,并在第二、第三、第四次上更改时间,…选择输入^^

基于您的代码:

用途:

$('.timeSelect').on('change', function(){
    var ind = parseInt($(this).attr('id')) +2;
    var newVal = $(this).val().replace(':', '');
    $("input:checkbox").eq(ind).attr('name', 'copyTime[1]['+newVal+']');
    $("input:checkbox").eq(ind).next('span').html(newVal);
    console.log(ind);
});

但变化:clone().clone(true)//添加

.attr('name', function() { // changing the name
                    return 'seats_timeclock[' + randnr + ']';
                }).attr('id', (parseInt($('select[name^=seats_timeclock]:last').attr('id')))+2) //ADDED

并添加一个id进行选择:

<td class="borderRight">
<select class="timeSelect" id="0" name="seats_timeclock[]">

这就是Fiddle。