我正在使用jQuery datepicker,我想在点击一个锚时显示它,我想隐藏与datepicker事件相关的输入。
所以我试过这个
<a id="test">
test
</a>
<p>Date: <input type="hidden" id="TafPassportDateOfIssue" /></p>
我有这个脚本
<script>
$('#test').click(function() {
$('#TafPassportDateOfIssue').datepicker();
});
但这没有做任何事情。有什么想法吗?
PS:我正在使用 jquery-1.7.2.min.js 和 jquery-ui-1.8.11.min.js
更新
我设法通过添加$('#TafPassportDateOfIssue').focus()
来使其发挥作用。我知道它看起来有点乱,但它完成了工作。
答案 0 :(得分:1)
Jquery
选择器无效。#
中没有selector
,因为您选择了ID
它应该是$('#TafPassportDateOfIssue')
而不是$('TafPassportDateOfIssue')
所以,将代码更改为
$('#test').click(function() {
$('#TafPassportDateOfIssue').datepicker();
});
答案 1 :(得分:1)
datepicker()
使输入元素成为一个datepicker,但不会显示它。这样,每次单击链接时,该函数都会尝试将datepicker应用于input元素,但实际上不会这样做,因为它还会向其中添加一个类hasDatepicker
。如果元素已经获得了类,则函数返回而不是重新应用datepicker。
jQuery UI datepicker插件可以选择在点击按钮时打开它:showOn: 'button'
所以,如果这是你实际尝试实现的目的,请使用它。