如何更改Chrome中日期字段中显示的HTML5占位符文字

我惊喜地发现以下代码在Chrome中查看时会呈现一个日期选择器:

 

但是,将忽略占位符文本,而是显示“日期/月/年”。

如何更改占位符文本并使用我自己的文本?

我已经尝试过了:

  $("#wdate").attr("placeholder", "Day/Month/Year of purchase");  

但无济于事。

日期类型不支持占位符属性。 此外,WebKit实现说它已修复。

较老的问题,但这是我最近必须使用的解决方案。

您将无法使用HTML5日期字段,但这可以使用jQuery UI datepicker完成。 http://jsfiddle.net/egeis/3ow88r6u/

 var $datePicker = $(".datepicker"); // We don't want the val method to include placehoder value, so removing it here. var $valFn = $.fn.val; $.fn.extend({ val: function() { var valCatch = $valFn.apply(this, arguments); var placeholder = $(this).attr("placeholder"); // To check this val is called to set value and the val is for datePicker element if (!arguments.length && this.hasClass('hasDatepicker')) { if (valCatch.indexOf(placeholder) != -1) { return valCatch.replace(placeholder, ""); } } return valCatch; } }); // Insert placeholder as prefix in the value, when user makes a change. $datePicker.datepicker({ onSelect: function(arg) { $(this).val($(this).attr("placeholder") + arg); } }); // Display value of datepicker $("#Button1").click(function() { alert('call val(): {' + $datePicker.val() + '}'); }); // Submit $('form').on('submit', function() { $datePicker.val($datePicker.val()); alert('value on submit: {' + $datePicker[0].value + '}'); return false; }); 
 .ui-datepicker { width:210px !important; } 
    

HTML5 Date:

jQuery DatePicker:

Original Source for this JQFaq Question

Interesting Posts