当输入框处于只读状态时,如何关闭日期选择器? 这是我的文本框
<input type="text" name="letter_date" value="12/05/2019" id="letter_date" class="form-control datepicker" placeholder="Masukkan Tanggal Nota" data-toggle="datepicker" readonly="readonly" />
并且我尝试使用此javascript代码,但是当我选择文本框时,它仍显示日期选择器。
$('[data-toggle="datepicker"]').datepicker({
beforeShow: function(i) {
if ($(this).prop('readonly')) {
e.preventDefault();
e.stopImmediatePropagation();
return false;
}
},
format : 'dd/mm/yyyy',
autoHide : true
});
答案 0 :(得分:1)
您可以使用datepicker
禁用datepicker("option", "disabled", true);
。
$('[data-toggle="datepicker"]').datepicker({
beforeShow: function(i) {
if ($(this).prop('readonly')) {
console.log('readonly is true');
$(this).datepicker("option", "disabled", true);
return;
}
},
format : 'dd/mm/yyyy',
autoHide : true,
});
<link href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<input type="text" name="letter_date" value="12/05/2019"
id="letter_date" class="form-control datepicker" placeholder="Masukkan Tanggal Nota"
data-toggle="datepicker" readonly="readonly"/>
-编辑-
对于multiple
输入
$('[data-toggle="datepicker"]').datepicker({
beforeShow: function(i) {
if ($(this).prop('readonly')) {
$(this).datepicker("option", "disabled", true);
return;
}
},
format : 'dd/mm/yyyy',
autoHide : true,
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<link href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" rel="stylesheet"/>
<input type="text" name="letter_date" value="12/05/2019"
id="letter_date" class="form-control datepicker" placeholder="Masukkan Tanggal Nota"
data-toggle="datepicker" readonly/>
<input type="text" name="letter_date" value="12/05/2019"
id="letter_date1" class="form-control datepicker" placeholder="Masukkan Tanggal Nota"
data-toggle="datepicker"/>
<input type="text" name="letter_date" value="12/05/2019"
id="letter_date2" class="form-control datepicker" placeholder="Masukkan Tanggal Nota"
data-toggle="datepicker" readonly/>
答案 1 :(得分:0)
尝试以下代码:
$('[data-toggle="datepicker"]').datepicker({
beforeShow: function(i) {
if ($(this).prop('readonly')) {
e.preventDefault();
e.stopImmediatePropagation();
return false;
}
},
format : 'dd/mm/yyyy',
autoHide : true,
disabled: true
});