这是我的目标,但这只是静态的:
我希望这个动态化,所以下面的相关复选框将遵循您在选择框中选择的值。
我想在当前的'18:00'选择框中选择,并将其更改为另一个,例如19:00 - 然后下面的复选框应该跟随并更改为1900显示文本和名称应该从copyTime[1][1800]
更改为copyTime[1][1900]
我该怎么做?我不知道从哪里开始,也许应该重写当前代码的结构以使其成为可能?
非常感谢
答案 0 :(得分:1)
我创建了一个可能的解决方案:
$('select').change(function(){
var $this = $(this),
time = $this.val(),
$checkbox = $('#'+$this.attr('data-checkbox')),
$checkbox_label = $('label[for="'+$this.attr('data-checkbox')+'"]');
$checkbox.attr('name', 'copyTime[1]['+time+']');
$checkbox_label.text(time);
});
绝对不完美,但我希望它有所帮助。
答案 1 :(得分:0)
$(".select").change(function() {
if($(this).is(":first-child"))
$(".label:first-child").html($(this).val());
else if($(this).is(":last-child"))
$(".label:last-child").html($(this)val());
else
$(".label").eq(1).html($(this).val);
});
答案 2 :(得分:0)
答案 3 :(得分:0)
所以:
使用这种方式复选框:
<input type="checkbox" name="copyTime[1][1800]" value="1" CHECKED> <span>1800</span>
这是JS:
$('select').on('change', function(){
var ind = $(this).index();
var newVal = $(this).val().replace(':', '');
//alert($("input:checkbox").eq(ind).attr('name'));
$("input:checkbox").eq(ind).attr('name', 'copyTime[1]['+newVal+']');
$("input:checkbox").eq(ind).next('span').html(newVal);
});
这是Fiddle