国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jquery UI Datepicker時間控件的使用及問題解決

2019-11-20 10:11:27
字體:
供稿:網(wǎng)友

本文實例為大家分享了jqueryUI中datepicker的使用,解決與asp.net中的UpdatePanel聯(lián)合使用時的失效問題。

1.jqueryUI的datepicker的使用

-->首先在jqueryUI官網(wǎng)上根據(jù)你的需要下載適合你系統(tǒng)主題的樣式,jqueryUI主題:下載地址


-->下載后的文件
jquery-ui-1.10.3.custom文件夾;不同的主題的區(qū)別在于它們引用的css不同
默認(rèn)下載的樣式如下:

 

其它樣式比如我下載的樣式:


下載的jqueryUI中除了css文件夾不同,其它文件均相同

-->頁面中的使用datePicker的步驟
(1)引入jquery-ui-1.10.3.custom.min.css樣式文件
(2)引入jquery-1.9.1.js和jquery-ui-1.10.3.custom.min.js腳本文件;注意:先引入jquery文件

(3)我的需求是制作一個起始時間和一個終止時間的選擇。

代碼如下:

<script type="text/javascript">    $(function () {      $("#txtStartDate").datepicker({        dateFormat: "yy-mm-dd",        changeMonth: true,        onClose: function (selectedDate) {          $("#txtEndDate").datepicker("option", "minDate", selectedDate);        }      });      $("#txtEndDate").datepicker({        dateFormat: "yy-mm-dd",        changeMonth: true,        onClose: function (selectedDate) {          $("#txtStartDate").datepicker("option", "maxDate", selectedDate);        }      });      $("#ui-datepicker-div").css("font-size", "12px"); //改變大小    });  </script></head><body>  <label for="from">開始時間:</label>  <input type="text" id="txtStartDate" name="from"/>  <label for="to">結(jié)束時間:</label>  <input type="text" id="txtEndDate" name="to"/></body>

 注:

(1)$("#ui-datepicker-div").css("font-size", "12px"); 用來改變?nèi)掌诳丶拇笮?br />(2)dateFormat: "yy-mm-dd",改變?nèi)掌诟袷?/p>

(3)日期控件為英文版本,加入一段腳本將其漢化

/* Chinese initialisation for the jQuery UI date picker plugin. *//* Written by Cloudream (cloudream@gmail.com). */jQuery(function ($) {  $.datepicker.regional['zh-CN'] = {    closeText: '關(guān)閉',    prevText: '<上月',    nextText: '下月>',    currentText: '今天',    monthNames: ['一月', '二月', '三月', '四月', '五月', '六月',        '七月', '八月', '九月', '十月', '十一月', '十二月'],    monthNamesShort: ['一', '二', '三', '四', '五', '六',        '七', '八', '九', '十', '十一', '十二'],    dayNames: ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'],    dayNamesShort: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],    dayNamesMin: ['日', '一', '二', '三', '四', '五', '六'],    weekHeader: '周',    dateFormat: 'yy-mm-dd',    firstDay: 1,    isRTL: false,    showMonthAfterYear: true,    yearSuffix: '年'  };  $.datepicker.setDefaults($.datepicker.regional['zh-CN']);});

(4)對于一些datepicker的屬性和方法的詳細(xì)使用,可以參考其API文檔,上面講的很詳細(xì)

 -->再分享一招 

 $("[id$=txtASN]")的使用

定義好的asp.net的textbox控件id為txtASN,但是$("#txtASN")卻獲取不到textbox的dom元素了,原因查看源代碼后發(fā)現(xiàn)是其控件ID發(fā)生了變化,如果控件放在了panel中或者母版中,生成的html控件input ID就會發(fā)生變化,如pnlBaseInfo_txtASN
解決辦法: $("[id$=txtASN]"),其意義就是在于獲得id以txtASN結(jié)尾的dom元素

-->完成效果


2.解決與asp.net中的UpdatePanel聯(lián)合使用時的失效問題
問題:運(yùn)行之后,點(diǎn)擊"查詢",頁面局部刷新,發(fā)現(xiàn)日歷選擇器不出來了
DatePicker在asp.net的UpdatePanel中異步回傳后失效的問題
在頁面第一次加載時可以正常顯示DatePicker控件,但在點(diǎn)擊查詢后,由于異步回傳,DatePicker就失效了。
-->分析UpdatePanel
UpdatePanel在應(yīng)用中主要用于局部刷新,避免整個頁面的Postback。 
UpdatePanel實現(xiàn)局部刷新的核心在于MicrosoftAjaxWebForm.js文件,它的局部刷新過程就是將頁面提交到服務(wù)端(包 含ViewState),執(zhí)行服務(wù)端代碼后異步將在UpdatePanel內(nèi)的HTML進(jìn)行重新呈現(xiàn)。 

-->分析jQuery
因為在UpdatePanel局部刷新之后,其中的文本框元素被重寫,而此時整個DOM樹并沒有重新加載,所以jQuery的ready事件并沒有觸 發(fā),所以文本框元素就失去了原有的特效。
-->解決方法
將初始化DatePicker的代碼放在Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function(evt, args) {});

$(function () {  Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(function (evt, args) {    $("[id$=txtStartDate]").datepicker({      dateFormat: "yy-mm-dd",      changeMonth: true,      onClose: function (selectedDate) {        $("[id$=txtEndDate]").datepicker("option", "minDate", selectedDate);      }    });    $("[id$=txtEndDate]").datepicker({      dateFormat: "yy-mm-dd",      changeMonth: true,      onClose: function (selectedDate) {        $("[id$=txtStartDate]").datepicker("option", "maxDate", selectedDate);      }    });    $("#ui-datepicker-div").css("font-size", "14px"); //改變大小  });});

大家還可以參考以下文章進(jìn)行學(xué)習(xí):

jquery UI Datepicker時間控件的使用方法(基礎(chǔ)版)

jquery UI Datepicker時間控件的使用方法(加強(qiáng)版)

jquery UI Datepicker時間控件的使用方法(終結(jié)版)

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 双峰县| 古丈县| 屯昌县| 永兴县| 温宿县| 商丘市| 兴文县| 江都市| 惠州市| 资源县| 深泽县| 诏安县| 余姚市| 大洼县| 和林格尔县| 万山特区| 且末县| 武宣县| 临武县| 阿拉善左旗| 冀州市| 色达县| 古田县| 双桥区| 东山县| 浏阳市| 阿克陶县| 来安县| 乐安县| 莒南县| 阳江市| 乌海市| 长丰县| 修武县| 台江县| 定远县| 周宁县| 监利县| 金川县| 新和县| 宝坻区|