jQuery日期选择器字段值未显示

r3i60tvu  于 2023-01-08  发布在  jQuery
关注(0)|答案(4)|浏览(241)

我有一个字段,我已经实现了jQuery Datepicker,但如果我分配一个值的字段,它显示在chrome的开发工具...

但它没有显示在前端。
我知道我们可以使用日期选择器选项setDate设置一个默认日期,如下所示:
$( ".datepicker" ).datepicker("setDate", '29-10-2016');
但日期是来自数据库,我不能硬编码它...所以有什么办法,我可以添加一个值,它会显示在前端,除非用户更改和设置另一个日期?
<input type="text" name="date" id="date" class="datepicker" value="25-10-2016">

wmtdaxz3

wmtdaxz31#

发生这个问题是因为javascript要求以"yyyy-MM-dd"格式输入日期,而不管您使用什么格式来显示值。
所以你的代码应该是这样的:

<input type="text" name="date" id="date" class="datepicker" value="2016-10-25">

<input type="text" name="date" id="date" class="datepicker" value="<?php echo date_format($date,"Y-m-d"); ?>">
8ftvxx2r

8ftvxx2r2#

我找到了一种方法,但仍然不觉得它是正确的方式,但现在这将为我做的伎俩。
我发布这个答案是为了帮助其他人,我会等着看其他人想出这个问题的最佳和有效的解决方案。
因为我使用的是PHP,所以我只是把这个放在我的页面上来设置该字段的日期。我可以添加更多的行,如果我有更多的日期字段在我的页面...

<script>
    $(function(){
        $('#date').datepicker('setDate', '<?php echo $date; ?>');
    });
</script>
liwlm1x9

liwlm1x93#

如果您没有从$('#date').val()获取值,则后端存在问题,日期不是来自后端。如果输入字段中存在值,如

<input type="text" name="date" id="date" class="datepicker" value="25-10-2016">

然后你可以使用下面的代码.
x一个一个一个一个x一个一个二个x

30byixjq

30byixjq4#

我的情况是我的日期输入没有显示我在提交后选择的日期值,但可以在Chrome Developer工具中看到日期值,所以我通过在设置日期选择器之前获取输入值,然后在设置后添加值来解决这个问题。

$( function() {
    var ddate = document.getElementById("date").value?document.getElementById("date").value:'';
    $("#date").datepicker();
    $("#date").datepicker("option", "dateFormat", "yy/mm/dd");
    $("#date").val(ddate);
} );

相关问题