jQuery日期选择器不显示原始文本值
我正在使用jQuery的日期选择器来表示我的一个表单字段 – 出生日期。
该字段使用PHP生成,并将填入用户的原始出生日期。 单击该字段会显示小部件,它完全没问题。
但是,文本框不显示原始值,即使它出现在浏览器的源代码中。 我正在使用Google Chrome。
以下是jQuery代码:
$(function() { $("#DatePicker").attr("readonly","readonly"); $("#DatePicker").datepicker({ changeMonth: true, changeYear: true, yearRange: "1950:+10" }); $("#DatePicker").datepicker("option","dateFormat","dd MM yy"); });
这是PHP代码:
echo "";
以下是HTML代码(从源代码复制):
请告诉我出了什么问题。 谢谢。
我不知道为什么,但这条线正在清除价值:
$("#DatePicker").datepicker("option","dateFormat","dd MM yy");
如果可能的话,尝试添加这样的选项,在Firefox和Chrome中为我工作 :
$("#DatePicker").datepicker({ changeMonth: true, changeYear: true, dateFormat: "dd MM yy" });
尝试使用像firefox这样的其他浏览器来检查它是否是浏览器兼容性问题,不确定php但是在asp.net上可以选择将文本框文本可见性设置为true
您应该使用setDate
而不是直接设置输入值。
$("#birthday").datepicker() .datepicker("option", "dateFormat", 'dd.mm.yy') .datepicker('setDate', '= $humanoid->getBirthday()->format('dmY') ?>');
根据Nik的回答,这就是我在“所有javascript”中使用它的方法
$(".popup-date").each(function(){ var ele = $(this); var v = ele.val(); ele.datepicker().datepicker("option", "dateFormat", "dd-M-yy").datepicker("setDate", v); });
接受的答案只能解决问题的一半。 显示该值,但日期选择器选择后的日期格式是错误的。
我的例子使用了不同的日期格式(例如,2014年9月1日),因为我刚刚复制了我最终开始工作的代码。 我还必须将其分解为获取元素和值,因为它在内插时最多是零星的。