页面加载时选中了jQuery复选框

页面加载时选中了jQuery复选框

该脚本运行良好,但是我想知道是否有一种方法可以避免代码中的重复(DRY方法)。

Demo

JS代码:

// Checkbox checked and input disbaled when page loads

$('#checkbox').prop('checked', true);

if ($('#checkbox').is(':checked') == true) {
    $('#textInput').prop('disabled', true);
}


// Enable-Disable text input when checkbox is checked or unchecked

$('#checkbox').change(function() {
    if ($('#checkbox').is(':checked') == true) {
        $('#textInput').prop('disabled', true);
    } else {
        $('#textInput').val('').prop('disabled', false);
    }
});

最佳答案

如果默认情况下无法在HTML中设置属性:

// Checkbox checked and input disbaled when page loads
$('#checkbox').prop('checked', true);

// Enable-Disable text input when checkbox is checked or unchecked
$('#checkbox').on('change', function() {
    var value = this.checked ? $('#textInput').val() : '';
    $('#textInput').prop('disabled', this.checked).val(value);
}).trigger('change');

演示:http://jsfiddle.net/tusharj/t01a9cxL/1/

关于jquery - 页面加载时选中了jQuery复选框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30509108/

10-09 09:54