Jquery 输入文本上的日期时间选择器事件
Jquery Datetimepicker event on input text
我正在使用 Jquery DateTimePicker 并在 javascript 库中添加了一个 输入元素 来更改时间,因为默认情况下我们可以更改时间仅使用滑块或 select 框。
我的输入效果很好(我有一个用于小时的输入,另一个用于分钟的输入)但我想在我的输入 onChange 或 onKeyPress 中添加一个事件以将一些限制设置为 "if the value is >59 then the value == 59"
create: function(tp_inst, obj, unit, val, min, max, step){
$('<input class="ui-timepicker-input" value="'+val+'" style="width:50%">')
.appendTo(obj)
.spinner({
min: min,
max: max,
step: step,
change: function(e,ui){ // key events
// don't call if api was used and not key press
if(e.originalEvent !== undefined)
tp_inst._onTimeChange();
tp_inst._onSelectHandler();
},
spin: function(e,ui){ // spin events
tp_inst.control.value(tp_inst, obj, unit, ui.value);
tp_inst._onTimeChange();
tp_inst._onSelectHandler();
}
});
return obj;
},
options: function(tp_inst, obj, unit, opts, val){
if(typeof(opts) == 'string' && val !== undefined)
return obj.find('.ui-timepicker-input').spinner(opts, val);
return obj.find('.ui-timepicker-input').spinner(opts);
},
value: function(tp_inst, obj, unit, val){
if(val !== undefined)
return obj.find('.ui-timepicker-input').spinner('value', val);
return obj.find('.ui-timepicker-input').spinner('value');
}
我不知道在输入文本的什么地方可以添加我的事件。
好的,我用这个解决了我的问题:
$(document).on('keypress', '.ui-timepicker-input', function(ev){
alert("ok");
});
我希望这会有所帮助。
我正在使用 Jquery DateTimePicker 并在 javascript 库中添加了一个 输入元素 来更改时间,因为默认情况下我们可以更改时间仅使用滑块或 select 框。
我的输入效果很好(我有一个用于小时的输入,另一个用于分钟的输入)但我想在我的输入 onChange 或 onKeyPress 中添加一个事件以将一些限制设置为 "if the value is >59 then the value == 59"
create: function(tp_inst, obj, unit, val, min, max, step){
$('<input class="ui-timepicker-input" value="'+val+'" style="width:50%">')
.appendTo(obj)
.spinner({
min: min,
max: max,
step: step,
change: function(e,ui){ // key events
// don't call if api was used and not key press
if(e.originalEvent !== undefined)
tp_inst._onTimeChange();
tp_inst._onSelectHandler();
},
spin: function(e,ui){ // spin events
tp_inst.control.value(tp_inst, obj, unit, ui.value);
tp_inst._onTimeChange();
tp_inst._onSelectHandler();
}
});
return obj;
},
options: function(tp_inst, obj, unit, opts, val){
if(typeof(opts) == 'string' && val !== undefined)
return obj.find('.ui-timepicker-input').spinner(opts, val);
return obj.find('.ui-timepicker-input').spinner(opts);
},
value: function(tp_inst, obj, unit, val){
if(val !== undefined)
return obj.find('.ui-timepicker-input').spinner('value', val);
return obj.find('.ui-timepicker-input').spinner('value');
}
我不知道在输入文本的什么地方可以添加我的事件。
好的,我用这个解决了我的问题:
$(document).on('keypress', '.ui-timepicker-input', function(ev){
alert("ok");
});
我希望这会有所帮助。