手动触发日期选取器选择事件
Fire the datepicker onselect event manually
谁能告诉我如何触发日期选择器的onselect事件?我的代码运行良好(根据日期选择器 altfield 的值从数据库中提取一些数据(,但是当页面加载时,它不会在当前日期触发 onselect 事件,也不会显示任何内容;所以我想手动执行此操作。
<script>
$( "#datepicker" ).datepicker
(
{
altField: '#sheet',
onSelect: function load() {
$(document).ready(function() {
$.ajax({
type: 'POST',
url: 'test.php',
data: {sheetid: $('#sheet').val()},
success: function(data)
{
$("#content").html(data);
}
});
});
},
firstDay: 1});
</script>
您可以在日期选择器上触发click
,紧跟在日期设置之后。
法典:
$(document).ready(function () {
$("#datepicker").datepicker({
altField: '#sheet',
onSelect: function(date) {
alert(date);
},
firstDay: 1
});
$('#datepicker').datepicker("setDate", new Date(2013,09,22) );
$('.ui-datepicker-current-day').click(); // rapresent the current selected day
});
演示:http://jsfiddle.net/IrvinDominin/DynuW/
我从日期选择器的源代码中获取了这个.js文件。请注意,this
应该替换为您的输入元素(而不是 jquery 对象,而是实际的 dom 元素(。就我而言,我是从键控事件中调用的。
// this is SUCH a hack. We need to call onselect to call any
// specific validation on this input. I stole this from the datepicker source code.
var inst = $.datepicker._getInst(this),
onSelect = $.datepicker._get(inst, "onSelect");
if (onSelect) {
dateStr = $.datepicker._formatDate(inst);
onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]);
}
最佳解决方案
var inst = $.datepicker._getInst($("#date")[0]);
$.datepicker._get(inst, 'onSelect').apply(inst.input[0], [$("#date").datepicker('getDate'), inst]);
这是我
发现的唯一也适用于日期时间选择器的解决方案
var $calendar =$('#from');
$.datepicker._getInst($calendar[0]).settings.onSelect()//or onClose or any event
相关文章:
- 取消拖动&选择事件
- 选择同一文件时未触发HTML输入文件选择事件
- jQuery UI 选项卡取消选择事件或在选择时保存上一个选项卡
- 收听单选按钮取消选择事件而不知道按钮's上下文(骨干视图)
- 如何使用show hint插件在CodeMirror中订阅选择事件
- 为什么jQuery选择事件监听器会多次触发
- typeahead选择事件(jQuery)的动态绑定
- 在选择事件上引导日期时间选取器
- 从嵌套函数中选择事件目标
- 如何在 LI 上触发“选择”事件,由其 ID 标识
- 在动态创建的 DHTMLX 网格上附加行选择事件
- 如何在jquery中传递文件选择事件
- 如何检测单选按钮取消选择事件
- 从下拉菜单中选择事件 - 仅限 Javascript
- 无法检测加载时的选择/下拉列表选择事件
- 从下拉菜单中选择事件后的选项
- jQuery 选项取消选择事件
- 选择事件并将其应用于动态元素
- HTML 文件输入框不会触发文件选择事件并在更改事件 - angularJS 中警告
- jQuery - jquery 自动完成选择事件后的文本字段值更改