jquery - 如何在点击时显示 jQuery UI datepicker
问题描述
我有以下 HTML:
<button type="button" id="btndate">Date</button>
我想在单击上面的按钮时显示 jQuery UI 日期选择器,并将文本“日期”替换为日历中的选定日期。我在 HTML 中没有任何文本框,只有<button>
.
$(document).ready(function(){
$("#btndate").click(function(){
// Required code...
});
});
如何实现?
解决方案
为此,您可以使用 jQueryUI datepicker 期望的输入字段,但只需将其隐藏即可。然后,您可以在日期更改时将所选日期复制到您的按钮。
以下是您将如何执行此操作的示例:
$(document).ready(function() {
$('.date').datepicker({
onSelect: function() {
$("#btndate").html($(this).val())
}
});
$("#btndate").click(function() {
$(".date").datepicker("show");
});
});
.date{
visibility:hidden
}
<script src="https://code.jquery.com/jquery-1.9.1.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<button type="button" id="btndate">Date</button>
<input class="date" type="text" />
编辑
似乎 datepicker 真的不喜欢使用隐藏的输入,它会在第二次点击时中断。
另一种方法是隐藏它visibility:hidden
(甚至display:none
不起作用)
更新的答案包括此修复
推荐阅读
- c# - 当我将脚本任务与 C# 脚本一起使用时,SSIS 引发错误
- dataframe - 是否可以使用 unix 删除包含特定值的列?
- jquery - window.history.replaceState 在我的 jquery 代码中不起作用
- node.js - 如何解决 UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性“0”
- javascript - 使用路由进入 js foreach 循环
- powershell - 如何在 psexec 中使用管道和过滤器?
- c# - Mongodb C#驱动程序向服务器发送消息时发生异常
- python - 无法使用“pool.starmap”将硒驱动程序作为参数传递给函数
- java - Oracle Universal Installer 终止执行
- ffmpeg - FFMPEG - 最新版本不起作用,早期版本可以