营业时间使用Jquery形成

时间:2012-10-05 19:38:32

标签: javascript jquery html forms select

我正在尝试使用JavaScript修改表单以填充此表单的选项。我几乎完成了,但我达到了一个我无法克服的里程碑。我想知道是否有人可以提供帮助。该示例的格式如下:http://jsfiddle.net/vladc77/bq5U6/3/

我可以成功分配关闭日期(星期六和星期日),但我无法通过选中/取消选中表单中的复选框来更改所有工作日的状态(禁用/启用)。请告诉我可以做什么而不改变我为此行中的复选框指定样式的方式:

 $(this).append(' <span class="closed custom-checkbox"><input type="checkbox" name="closed" value="closed" class="closed" id="closedHoursElement" onchange="closedHours()"><span class="box"><span class="tick"></span></span></span>Closed');

提前谢谢。

1 个答案:

答案 0 :(得分:0)

它是因为你试图得到复选框的兄弟姐妹..它唯一的兄弟是一个span元素。 select元素是父元素的兄弟元素。

$('input[type=checkbox]').change(function() {   
       $(this).parent().siblings('select').prop('disabled', this.checked);
});

http://jsfiddle.net/vladc77/bq5U6/3/

您还应该使用.prop()来设置已禁用的属性。对于jQuery 1.6+

来自jQuery docs

  

应该使用.prop()方法来设置disabled和checked而不是.attr()方法。

使用prop设置disabled属性,您可以将其设置为true或false

$(element).prop('disabled',true);  // disabled
$(element).prop('disabled',false); // not disabled