欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

使用JQuery DatePicker屏幕下方会出现一个div情况的处理 DatepickerdivjqueryUI 

程序员文章站 2024-03-25 20:00:22
...

在项目中需要使用一个日期控件来完成表单,由于项目使用了JQuery,所以干脆就是使用JQuery自带的DatePicker了。

在自定义DatePicker的Style过程中会发现屏幕的下方会出现一条不知名的线(上图不是很方便)。我查看了一下源代码,代码是这样的:
<div id="ui-datepicker-div" class="ui-datepicker ui-widget

ui-widget-content ui-helper-clearfix ui-corner-all">

</div>

个人觉得应该是datepicker实现过程中必须的东西,但是为了美观,我们也不能让他一直在页面上,经过我的调查,我找到了两种方法。一种是我在CSDN上找到的,一种是我自己发现的。

先说第一种:

在jquery的onready方法中加上 $("#ui-datepicker-div").hide(); 加载时隐藏下就行了!

(感谢CSDN这位朋友,他的ID为chuxu000)

这种方法方法一开始我没有明白,但是经过我几次尝试,成功的起到了效果,我写一个demo,这样更直观一些:


 $(document).ready(function(){

$( "#Date" ).datepicker(); 

$("#ui-datepicker-div").hide();

})

这种方法的确是有效果的,但是对于一个项目来说,如果项目中有许多地方用到Datepicker的话,那么就会变的很麻烦,也不利于维护。可以说是"治标不治本"。


经过我的思考,$("#ui-datepicker-div").hide();这段代码无非是想这个div在页面加载的时候不显示,所以我就想到了在css的属性中有一个Display属性,所有就尝试了一下,最后成功了解决了这个问题,这样我们便不用一个页面一个页面的去修改我们的Datepicker控件了。下面是我修改css的文件和位置:

css文件的名字一般叫做jquery.ui.datepicker.css。总是就是存放datepicker的css,名字不必拘泥。下面说需要修改的那段位置:

.ui-datepicker { width: 17em; padding: .2em .2em 0; font-size: 0.8em; display: none;}

在这段css中加入我注红的地方,也就是display: none;这段代码。经过测试,bug消失了。

由于小弟也是对css样式表不是很了解,解决这个问题也是通过经验来判断,具体原因,在我学习完css之后我会继续补充

 

  • 使用JQuery DatePicker屏幕下方会出现一个div情况的处理
            
    
    
        DatepickerdivjqueryUI 
  • 描述: 图中就是出现的div
  • 大小: 6 KB