jQuery Datepicker在一种形式上返回空值,但在其他形式上不返回

时间:2019-01-12 07:36:11

标签: javascript php jquery datepicker jquery-ui-datepicker

日期选择器存在问题:当我单击一个日期时,日期选择器应能正常工作,但是表单字段会清空自身的任何当前内容,并且在重新加载或选择新条目之前一直为空。

在此停止工作之前,仅以一种形式,我一直在做的所有工作都是在网站上的其他地方以及使用PHP而不是Javascript进行的,所以我什至不知道从哪里开始,并且Apache日志中也没有任何显示。此页面上没有其他Javascript,所以我需要知道的是在没有错误的情况下如何检查冲突。

只需确保代码本身看起来还可以,就在这里:

外部js文件中的Javascript:

$(document).ready(function(){ 
    $( "#StartDate" ).datepicker({ 
                        altField: '#datepicker',
                        altFormat: 'yy-mm-dd',
                        dateFormat: 'D M d, yy', 
                        firstDay: 1,
        onClose: function( selectedDate ) {
            $( "#StartDate" ).datepicker( "option", "minDate", selectedDate );
        }
    });
    $( "#EndDate" ).datepicker({
                        altField: '#datepicker',
                        altFormat: 'yy-mm-dd',
                        dateFormat: 'D M d, yy', 
                        firstDay: 1,
        onClose: function( selectedDate ) {
            $( "#EndDate" ).datepicker( "option", "maxDate", selectedDate );
        }
    }); 
    $( "#datepicker" ).datepicker({
                        altField: '#datepicker',
                        altFormat: 'yy-mm-dd',
                        dateFormat: 'D M d, yy', 
                        firstDay: 1,
        onClose: function( selectedDate ) {
            $( "#datepicker" ).datepicker( "option", "maxDate", selectedDate );
        }
    }); 
}); 

表单字段本身:

<input type="text" name="EventDate" value="Fri Jan 11, 2019" size="15" id="datepicker">

。 。 。表单出现了问题,该问题称为 datepicker 。另外两个正在完美地处理具有两个日期选择器的另一种表单。

1 个答案:

答案 0 :(得分:0)

以某种方式,我原来的问题是OnLoad位中的某个内容,并将其从不起作用的最后一节中删除了,它起作用了,但是其他两个都没有删除,所以一切正常。一定有语法错误或其他错误。

无论如何,现在它已正确修复。一旦意识到了@ArtisticPhoenix类的含义,我便可以实现它,以大大简化代码并使之以任何形式使用,无论它们可能有多少个日期选择器。我现在有这个:

$(function() {
   $('input').filter('.datepicker').datepicker({
    altFormat: 'yy-mm-dd', 
    dateFormat: 'yy-mm-dd', 
    firstDay: 1
   });
});

在这种情况下,表单本身是半动态的,这意味着它是通过定义函数中找到的一组值创建的,因此只需更改定义即可使它在多个站点正常工作。现在,id只是字段名称,而类始终是datepicker。到目前为止似乎工作正常!

<input type="text" name="EventDate" value="2019-01-11" size="15" id="EventDate" class="datepicker">