2010-11-12 127 views
81

我决定使用JQuery UI Datepicker脚本来选择日期。下面是我的代码的一部分,我的方式集成到我的PHP页面:如何禁用JQuery UI Datepicker字段的手动输入?

<link type="text/css" href="css/south-street/jquery-ui-1.8.6.custom.css" rel="stylesheet" /> 
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"></script> 
<script type="text/javascript"> 
$(function(){ 
    // Datepicker 
    $('#datepicker').datepicker({ dateFormat: 'yy-mm-dd' }); 
    //hover states on the static widgets 
    $('#dialog_link, ul#icons li').hover(
     function() { $(this).addClass('ui-state-hover'); }, 
     function() { $(this).removeClass('ui-state-hover'); } 
    ); 
}); 
</script> 

和:

// date picker (embeds JQuery script) 
echo '<label for="datepicker">Date: </label>'; 
echo '<input type="text" name="datepicker" id="datepicker" />'; 
echo '<div id="datepicker"></div>'; 

差不多根据JQuery用户界面的说明。

现在我的问题是:如何禁用文本输入字段中的手动输入?我只希望JQuery Datepicker脚本能够填充文本字段。据我所见,该脚本目前阻止用户在文本字段中输入任何非数字字符,但允许任何数字组合(因此,允许使用“95460829468”之类的乱码)。

回答

208

当您进行输入时,将其设置为只读。

<input type="text" name="datepicker" id="datepicker" readonly="readonly" /> 
+0

令人惊讶的简单的解决方案。似乎按预期工作,非常感谢! – BeeDog 2010-11-12 12:34:08

+2

如果添加'background-color:#fff!important;光标:文本!重要;'它看起来完全正常... – 2014-08-05 12:51:48

+6

我会使用光标指针,使其看起来可点击 ' ' – 2014-08-18 12:27:03

23

我想你应该添加 风格= “背景:白色;” 使它看起来像它是可写

<input type="text" size="23" name="dateMonthly" id="dateMonthly" readonly="readonly" style="background:white;"/> 
+3

1.复制答案2.添加新属性(我认为你应该添加样式=“背景:白色”,使它看起来像它是可写的,“光标:指针”,使它看起来可点击)3. ????? ?? 4.利润 – skmasq 2016-07-04 16:33:23

相关问题