Jquery datepicker - 只有日期和月份
Posted
技术标签:
【中文标题】Jquery datepicker - 只有日期和月份【英文标题】:Jquery datepicker - only day and month 【发布时间】:2011-10-11 13:29:37 【问题描述】:我希望用户在表单中指定他们的生日或周年纪念日(不包括年份)。为此,我想使用 jquery datepicker,但它根本不应该显示任何年份选项。怎么办?
我尝试通过使changeDay: true
和changeYear: false
修改this so question 中的代码,但无法使其正常工作。
【问题讨论】:
【参考方案1】:你可以这样做:
$('#date').datepicker(
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'dd MM'
);
小提琴http://jsfiddle.net/u8GnD/1/
【讨论】:
这不起作用。选择未来日期时,年份不会改变。 你的今天按钮不工作如何让它工作 一定要把html输入的属性改成只读,否则还是可以手动修改输入值的。【参考方案2】:设置 css 隐藏年份和日期格式,如 K6t 所说
.ui-datepicker-year
display:none;
【讨论】:
当还有其他日期选择器时,我如何区分这个特定的日期选择器? 对于 cartain 日期选择器,您可以在 .focus 中使用它,请参见:***.com/a/41931400/3412696 不建议,使用配置代替见***.com/a/6799216/5277245【参考方案3】:您可以像这样从日期选择器中隐藏年份:
$(".daypicker").datepicker(
changeYear: false,
dateFormat: 'MM-dd',
).focus(function ()
$(".ui-datepicker-year").hide();
);
它不会影响同一页面中的其他日期选择器。
【讨论】:
这将与 .on() 和 .off() 一起使用,使其暂时可隐藏【参考方案4】:$("#datepicker").datepicker(
format: "dd-MM",
viewMode: "months",
maxViewMode: "months"
);
这肯定会从日期选择器视图中隐藏年份,将显示仅显示月份和日期面板
【讨论】:
这些似乎不是 jQuery UI 日期选择器的有效参数。【参考方案5】:$( function()
var date = $('#datepicker').datepicker(
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: false).val();
);
【讨论】:
总是在你的答案中添加解释。仅仅代码没有帮助。 此答案可能会或可能不会解决 OP 体验的问题,因此请始终在您的答案中添加解释以阐明它如何解决问题【参考方案6】:我可能迟到了,但我发现以上所有答案/建议和 cmets 几乎都是正确的,但有人可能会错过正确的 jquery 插件来使代码正常工作。
努力完成它的人请考虑先更改您的 javascript 插件,然后改用以下插件
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.12.4.js"></script>
<script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
【讨论】:
【参考方案7】:将日期格式更改为
dateFormat: 'dd MM',
在 datePicker.js 文件中
【讨论】:
如果只能使用选项,请不要编辑日期选择器代码。以上是关于Jquery datepicker - 只有日期和月份的主要内容,如果未能解决你的问题,请参考以下文章
jquery UI datepicker 月份和年份只有 css 定位问题
JQuery datepicker 默认日期和多个 datepicker