我调整了一点选择器如何工作的日期时间。 这是触发的选择变化。
但现在我无法输入到文本框中。 我使用文本框不仅为日期时间,但让用户输入的其他类型的信息在我的应用程序。
我怎样才能让用户输入到这个文本框中? 因此,所有其他设置将保持原样。 日期选择器仅在选择更改触发。 不上单击文本框本身。
的jsfiddle样本
HTML代码
<input id="datetime" type="text" name="datetime" value="" >
<select size=5>
<option value="not">Not this one</option>
<option value="not">Not this one</option>
<option value="not">Not this one</option>
<option value="datetimepicker">Select date and time</option>
</select>
JavaScript代码
$('#datetime').datetimepicker({
showOn: "button",
});
$('option[value=datetimepicker]').click(function() {
$('#datetime').datetimepicker('show');
});
CSS代码
.ui-datepicker-trigger{display:none;}
这是你的代码在默认情况下禁用您的输入,并从中作出的DateTimePicker“按钮”,那为什么你不能印刷输入的字段中的文字:
$('#datetime').datetimepicker({
showOn: "button",
});
让我们进一步看看:
$('option[value=datetimepicker]').click(function() {
// This part of code will work when you click inside SELECT field
}
所以,你需要将输入转化成的DateTimePicker当你点击里面SELECT,真的吗?
要做到这一点,你只需动previouse块内的DateTimePicker的inicialization:
$('option[value=datetimepicker]').click(function() {
$('#datetime').datetimepicker({
showOn: "button",
});
$('#datetime').datetimepicker('show');
});
现在可以在里面输入类型,直到SELECT被按下。 当SELECT被压,datapicker启动并输入字段中输入您的文字消失。
下面是修改小提琴: http://jsfiddle.net/dPRjS/9/
更新:
要添加的可能性编辑输入的DateTimePicker关闭后,你需要摧毁创建的DateTimePicker在现场输入,将其返回到工作可能作为输入:
你需要当你点击输入栏激活这个动作:
$('#datetime').click(function(){
$('#datetime').datetimepicker( "destroy" );
});
工作更新小提琴: http://jsfiddle.net/dPRjS/10/