我有一个按钮和一个隐藏的输入。
我想在我点击它的按钮下面打开日期选择器。 并且所选日期将插入隐藏输入中。
我不想创建一个新按钮(使用datepicker选项),我不想显示输入。
<button type="button" class="btn" id="date_button">Select Date...</button>
<input type="hidden" name="date" id="date_field" />
<script>
$('#date_button').datepicker({
showOn: "button",
onSelect: function( dateText ) {
$('#date_field').val( dateText );
$('#date_button').text( dateText );
}
})
</script>
有什么想法吗?
答案 0 :(得分:13)
我是通过做一个.show()。focus()。hide() - 完美地工作虽然它有点不洁净:
$(document).ready(function() {
$('input').datepicker();
$('#mybutton').click(function() {
$('input').show().focus().hide();
});
});
答案 1 :(得分:1)
这有点hacky,但似乎工作正常:
input
而不是按钮。var $button = $("#date_button"),
left = $button.offset().left,
top = $button.offset().top + $button.height();
$('#date_field').datepicker({
onSelect: function(dateText) {
$('#date_field').val(dateText);
$button.text(dateText);
},
beforeShow: function (event, ui) {
setTimeout(function () {
ui.dpDiv.css({ left: left, top: top });
}, 5);
}
});
$button.on("click", function() {
$("#date_field").datepicker("show");
});
答案 2 :(得分:0)
style="outline: none; color:white; margin-top:-20px; border:none;"
所以它不会出现在页面上。它是可聚焦的,它只是工作正常。