Javascript 如果第一个输入为空,如何使用jQuery禁用输入类型日期
我在收银台工作。如果前一个输入(dpick)为空,我需要禁用一个输入(#dreturn) 这是我的代码:Javascript 如果第一个输入为空,如何使用jQuery禁用输入类型日期,javascript,jquery,Javascript,Jquery,我在收银台工作。如果前一个输入(dpick)为空,我需要禁用一个输入(#dreturn) 这是我的代码: $(document).ready(function(){ var minDate = new Date(); $("#dpick").datepicker({ showAnim: 'drop', numberOfMonth: 1, maxDate: 7, minDate: minDate,
$(document).ready(function(){
var minDate = new Date();
$("#dpick").datepicker({
showAnim: 'drop',
numberOfMonth: 1,
maxDate: 7,
minDate: minDate,
dateFormat: 'yy/mm/dd',
onClose : function(selectedDate){
$('#dreturn').datepicker("option", "minDate", selectedDate);
}});
var minDate = new Date();
$("#dreturn").datepicker({
showAnim: 'drop',
numberOfMonth: 1,
maxDate: 7,
minDate: minDate,
dateFormat: 'yy/mm/dd',
onClose : function(selectedDate){
$('#dreturn').datepicker("option", "minDate", selectedDate);
}});
这是我的数据采集器,但这对我没有帮助
$('#dreturn').change(function() {
var start = $('#dpick').datepicker('getDate');
var end = $('#dreturn').datepicker('getDate');
if (start<end) {
var days = (end - start)/1000/60/60/24;
$('#days').val(days);
}
else {
alert ("Please chech again your dates!");
$('#dpick').val("");
$('#dreturn').val("");
$('#days').val("");
}
});
将if语句更改为
if(!Date.parse($((“dpick”).val()){
然后将其移动到模糊事件处理程序,类似这样
$("#dpick").blur(function (){
if(!Date.parse($(this).val())){
document.getElementById("dreturn").disabled = true;
}else{
document.getElementById("dreturn").disabled= false;
}
})
初始化日期选择器后,首先禁用第二个日期选择器“#dreturn”:
$(document).ready(function(){
//initialization
$("#dpick").datepicker({...});
$("#dreturn").datepicker({...});
$("#dreturn").prop('disabled',true);
/****************** new code to be inserted see below ************/
});
现在,关于“#dpick”enable“#dreturn”的更改:
注意:
1.“if(val)”在“val”不为null、未定义且jQuery UI文档状态下计算为true
对于日期选择器,默认值为“null”。
2.现在要对jQuery UI的日期选择器使用“change()”,请检查
因此,这意味着您必须使用jQuery日期选择器UI的“onSelect”来解决日期选择器的缺陷
你的问题应该会得到解决。希望能有所帮助。:-
如果(!$dpick').val(){
“如果(!$(!$dpick”).val(){”谢谢,这很有效,但在我在“dpick”中选择日期之后它仍然不可用我假设它是一个id。请检查它是的,它是一个id,当你给我发送答案时,我已经修改了它,但仍然不起作用。这次,我将事件从“更改”更改为“模糊”。
$(document).ready(function(){
//initialization
$("#dpick").datepicker({...});
$("#dreturn").datepicker({...});
$("#dreturn").prop('disabled',true);
/****************** new code to be inserted see below ************/
});
/************************ CODE TO BE INSERTED ABOVE ****************/
$("#dpick").change"(
function()
{
var val= $("#dpick").val();
if(!(val))
{
$("#dreturn").prop('disabled',false);
}
}
);
$(document).ready(
function()
{
//initialization
$("#dpick").datepicker({
showAnim: 'drop',
numberOfMonth: 1,
maxDate: 7,
minDate: minDate,
dateFormat: 'yy/mm/dd',
onClose : function(selectedDate){
$('#dreturn').datepicker("option", "minDate", selectedDate);
},
onSelect: function(){
$(this).change();
}
});
$("#dreturn").datepicker({.....});
$("#dreturn").prop('disabled',true);
$("#dpick").change"(
function()
{
var val= $("#dpick").val();
if(val)
{
$("#dreturn").prop('disabled',false);
}
}
);
}
);