我目前正在使用datepicker。从某个时候开始我想显示一些文字,而不是我从datepicker中选择的日期,是否有人知道是否有办法做到这一点?非常感谢!
例如: 如果2015/01/01是假日,我选择这个日期,我想在输入元素而不是2015/01/01上显示假日名称。当我提交时,值(2015/01/01)仍将传递到服务器。
我搜索了谷歌,但还没有找到一个好的解决方案。
答案 0 :(得分:1)
您可以将所选日期存储在另一个字段中,并使用onSelect
事件检查并覆盖所选值。
$("#datepicker").datepicker({
altField: "#actualDate",
onSelect: function(dateText, inst) {
if (dateText.substring(0, 5) == "04/01") {
inst.input.val("april fools!");
}
}
});

<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/themes/smoothness/jquery-ui.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.3/jquery-ui.min.js"></script>
<input id="datepicker" type="text">
<br>
<input id="actualDate" type="text">
&#13;
答案 1 :(得分:0)
最干净的是完全实现自己的日期选择器。
接下来是hack datepicker,例如
var that = this;
this.$input.datepicker({
onSelect: function () {
// get value, e.g. "2015-10-14"
// check if that date is mapped to any holiday
that.$input.val("St. Patrick Day 2015");
},
});
当你得到这个。$ input.val()来使用它时,必须手动翻译&#34; St。 Patrick Day 2015&#34;回到&#34; 2015-10-14&#34;。
有点难看与你建立自己。