Javascript 不带输入的jQuery日期选择器
我有一个相当复杂的web应用程序,我想在其中添加一些日期选择UI 我遇到的问题是,我无法从文档中找出如何真正控制日期选择器的出现方式和时间。没有涉及任何表单元素(不,我不打算添加一个秘密表单字段),因此完全简单的开箱即用方法根本不起作用 我希望有人能提供一些关于模式的指导,使我能够以编程方式调用datepicker。我相信我知道如何使用datepicker的自定义事件来初始化和定位它,并在用户撤销它时恢复所选的值。我只是很难实例化日期选择器,因为我没有将它与元素配对 以下是不起作用的: 原因是“jQuery.datepicker”不是一个函数。(我做错了。) 我不喜欢“dialog”方法——这只是我在不引用表单元素的情况下调用它的最佳猜测Javascript 不带输入的jQuery日期选择器,javascript,jquery,jquery-ui,datepicker,Javascript,Jquery,Jquery Ui,Datepicker,我有一个相当复杂的web应用程序,我想在其中添加一些日期选择UI 我遇到的问题是,我无法从文档中找出如何真正控制日期选择器的出现方式和时间。没有涉及任何表单元素(不,我不打算添加一个秘密表单字段),因此完全简单的开箱即用方法根本不起作用 我希望有人能提供一些关于模式的指导,使我能够以编程方式调用datepicker。我相信我知道如何使用datepicker的自定义事件来初始化和定位它,并在用户撤销它时恢复所选的值。我只是很难实例化日期选择器,因为我没有将它与元素配对 以下是不起作用的: 原因是“
我正在使用jQuery 1.4.3和jQueryUI 1.8.6您必须动态定义输入字段,然后将日期选择器附加到您新创建的没有字段的类上。我认为这样做行不通
<input type="hidden" id="yourField" />
我通读了datepicker代码,看起来,正如所写的,datepicker必须附加到输入、div或span标记 因此,如果您唯一的反对意见是使用表单元素,那么附加到div或span可能是您最好的选择,这里有一个示例说明如何执行此操作: 如果您正在寻找其他方法来控制datepicker,那么您可能必须扩展datepicker代码以执行您希望它执行的操作,如果您采用这种方法,那么我建议首先查看datepicker代码中的_inlineDatePickerprivate方法,将日期选择器附加到div或span标记的方法。从插件页面:
$(函数(){
$(“#日期选择器”).datepicker();
});
日期:
显示嵌入在页面中而不是覆盖中的日期选择器。只需对div而不是输入调用.datepicker()。
抱歉,应用程序的这一部分没有输入,我不会添加输入,因为这是附加此行为的最明显方式。我觉得在我的帖子里我已经很清楚了。谢谢你的挖掘!我也做了一些窥视,虽然我还没有让它工作,但我发现当调用“dialog”方法时,插件实际上会生成一个隐藏的输入,当它处于活动状态时会隐藏在可见的日期选择器后面。看起来有点胡闹,但证实了许多其他SO帖子的建议:插件实际上只针对标准案例设计。我可能必须解决这个问题。经过一段时间的测试,这是唯一受支持的模式。有人需要增强日期选择器,使其更灵活。也许那个人就是我。不过,一次只能进行一场战斗。同时使用div/span会产生内联(始终显示)日期选择器。。。与此问题相关的未回答问题(尚未回答)-
<input type="hidden" id="yourField" />
$("#yourField").datepicker({
buttonImage: '../yourImage.png',
buttonImageOnly: true,
changeMonth: true,
changeYear: true,
showOn: 'both',
});
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
</script>
<div class="demo">
Date: <div id="datepicker"></div>
</div><!-- End demo -->