我正在使用这个页面上的jqueryui datepicker - http://jqueryui.com/demos/datepicker/
如何在标签而不是输入字段上调用它?这个是可能的吗?
发布于 2009-08-11 18:32:21
我没有看过代码,但我怀疑它假定它附加到一个<input type="text">
元素。
因此,假设您必须拥有该元素。
您可以隐藏<input>
并通过从标签事件调用其方法与datepicker进行交互。
$(labelselector).click(function() {
$(inputselector).datepicker('show');
});
发布于 2010-03-15 18:51:56
re:定位问题
上面的建议对我获得一个干净的ui不起作用。当人们单击一个标签时,我激活了我的datepicker控件,但我根本不想显示textbox (上面的css尝试接近了,但textbox仍然获得了焦点,以及其他问题)。
我的解决方案是将datepicker附加到< input type=的文本框设为“隐藏”.../>这为我解决了所有的问题(我把隐藏的输入控件放在标签之前,这样输入控件的偏移量就适合我的标签)。
值得注意的是,将normal输入控件样式设置为display: none或visibility: hidden等不起作用。
这个解决方案之所以有效,是因为datepicker控件源代码中的子句只在"type != "hidden“时执行某些功能。
发布于 2009-08-11 18:55:13
您是否正在尝试绑定它,以便它在单击时显示,或者使结果填充到标签或Div中?您可以将其绑定到一个隐藏的文本框,然后将所需的效果绑定到该隐藏字段的change()事件。
$(function() {
$("#datepicker").datepicker();
$("#alternate").click(function() {
$("#datepicker").focus();
});
$("#datepicker").change(function() {
$("#alternate").html($("#datepicker").val());
});
});
<input id="datepicker" style="display:none" /><label id="alternate">change me</label>
这在我的FireFox 3.5中运行得很好
https://stackoverflow.com/questions/1262113
复制相似问题