Jquery操作select
posted @ 2012-04-05 14:00 段旭 閱讀(1147) | 評論 (0) | 編輯 收藏
隨筆 - 42, 文章 - 1, 評論 - 0, 引用 - 0
|
Jquery操作select
摘要: 以下是操作 下拉列表的常用功能:1.獲取列表項中候選項的數(shù)目。2.獲得選中項的索引值。3.獲得當前選中項的值4.設(shè)定選擇值5.設(shè)定選擇項 1 //得到select項的個數(shù) 2 jQuery.fn.size = function(){ ... 閱讀全文
posted @ 2012-04-05 14:00 段旭 閱讀(1147) | 評論 (0) | 編輯 收藏 Oracle全角変換SELECT UTL_I18N.TRANSLITERATE (TO_MULTI_BYTE(NAME), 'KANA_HIRAGANA') NAME--半角カタカナ?英數(shù)字-->全角ひらかな posted @ 2012-03-27 18:52 段旭 閱讀(639) | 評論 (0) | 編輯 收藏 mysql 取整函數(shù)1.ceil () /ceiling() 向上取整 ex: ceil(1.2) = 2 2.floor () 向下取整 ex: floor(1.2) = 1 3.round() 四舍五入 posted @ 2012-03-07 16:32 段旭 閱讀(2374) | 評論 (0) | 編輯 收藏 mysql 日期這里是一個使用日期函數(shù)的例子。下面的查詢選擇了所有記錄,其date_col的值是在最后30天以內(nèi): mysql> SELECT something FROM table DAYOFWEEK(date) WEEKDAY(date) DAYOFMONTH(date) DAYOFYEAR(date) MONTH(date) DAYNAME(date) MONTHNAME(date) QUARTER(date) WEEK(date) WEEK(date,first) YEAR(date) HOUR(time) MINUTE(time) SECOND(time) PERIOD_ADD(P,N) PERIOD_DIFF(P1,P2) DATE_ADD(date,INTERVAL expr type) DATE_SUB(date,INTERVAL expr type) ADDDATE(date,INTERVAL expr type) SUBDATE(date,INTERVAL expr type) MySQL在expr格式中允許任何標點分隔符。表示顯示的是建議的分隔符。如果date參數(shù)是一個DATE值并且你的計算僅僅 mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND; 如果你指定太短的間隔值(不包括type關(guān)鍵詞期望的間隔部分),MySQL假設(shè)你省掉了間隔值的最左面部分。例如, mysql> select DATE_ADD('1998-01-30', Interval 1 month); 注意,從前面的例子中詞INTERVAL和type關(guān)鍵詞不是區(qū)分大小寫的。 TO_DAYS()不打算用于使用格列高里歷(1582)出現(xiàn)前的值。 FROM_DAYS(N) TO_DAYS()不打算用于使用格列高里歷(1582)出現(xiàn)前的值。 DATE_FORMAT(date,format) 所有的其他字符不做解釋被復制到結(jié)果中。 mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y'); TIME_FORMAT(time,format) CURRENT_DATE CURTIME() CURRENT_TIME NOW() SYSDATE() CURRENT_TIMESTAMP UNIX_TIMESTAMP() UNIX_TIMESTAMP(date) 當UNIX_TIMESTAMP被用于一個TIMESTAMP列,函數(shù)將直接接受值,沒有隱含的“string-to-unix-timestamp”變換。 FROM_UNIXTIME(unix_timestamp) FROM_UNIXTIME(unix_timestamp,format) SEC_TO_TIME(seconds) TIME_TO_SEC(time) mysql> select DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y'); TIME_FORMAT(time,format) 其他修飾符產(chǎn)生一個NULL值或0。 CURRENT_DATE CURTIME() CURRENT_TIME NOW() SYSDATE() CURRENT_TIMESTAMP UNIX_TIMESTAMP() UNIX_TIMESTAMP(date) 當UNIX_TIMESTAMP被用于一個TIMESTAMP列,函數(shù)將直接接受值,沒有隱含的“string-to-unix-timestamp”變換 www.knowsky.com。 FROM_UNIXTIME(unix_timestamp) FROM_UNIXTIME(unix_timestamp,format) SEC_TO_TIME(seconds) TIME_TO_SEC(time) posted @ 2012-03-07 16:31 段旭 閱讀(264) | 評論 (0) | 編輯 收藏 構(gòu)建jQuery對象(function( window, undefined ) {
var jQuery = (function() { // 構(gòu)建jQuery對象 var jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); }
// jQuery對象原型 jQuery.fn = jQuery.prototype = { constructor: jQuery, init: function( selector, context, rootjQuery ) { // selector有以下7種分支情況: // DOM元素 // body(優(yōu)化) // 字符串:HTML標簽、HTML字符串、#id、選擇器表達式 // 函數(shù)(作為ready回調(diào)函數(shù)) // 最后返回偽數(shù)組 } };
// Give the init function the jQuery prototype for later instantiation jQuery.fn.init.prototype = jQuery.fn;
// 合并內(nèi)容到第一個參數(shù)中,后續(xù)大部分功能都通過該函數(shù)擴展 // 通過jQuery.fn.extend擴展的函數(shù),大部分都會調(diào)用通過jQuery.extend擴展的同名函數(shù) jQuery.extend = jQuery.fn.extend = function() {};
// 在jQuery上擴展靜態(tài)方法 jQuery.extend({ // ready bindReady // isPlainObject isEmptyObject // parseJSON parseXML // globalEval // each makeArray inArray merge grep map // proxy // access // uaMatch // sub // browser });
// 到這里,jQuery對象構(gòu)造完成,后邊的代碼都是對jQuery或jQuery對象的擴展 return jQuery;
})();
window.jQuery = window.$ = jQuery; })(window); posted @ 2012-02-22 13:10 段旭 閱讀(776) | 評論 (0) | 編輯 收藏 常用正則式常用的數(shù)字正則(嚴格匹配)
正則 含義
^[1-9]\d*$ 匹配正整數(shù)
^-[1-9]\d*$ 匹配負整數(shù)
^-?[1-9]\d*$ 匹配整數(shù)
^[1-9]\d*|0$ 匹配非負整數(shù)(正整數(shù) + 0)
^-[1-9]\d*|0$ 匹配非正整數(shù)(負整數(shù) + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 匹配正浮點數(shù)
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 匹配負浮點數(shù)
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ 匹配浮點數(shù)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ 匹配非負浮點數(shù)(正浮點數(shù) + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ 匹配非正浮點數(shù)(負浮點數(shù) + 0) 常用字符串正則 正則 含義 補充 ^[A-Za-z]+$ 匹配由26個英文字母組成的字符串 或 /^[a-z]+$/i ^[A-Z]+$ 匹配由26個英文字母的大寫組成的字符串 ^[a-z]+$ 匹配由26個英文字母的小寫組成的字符串 ^[A-Za-z0-9]+$ 匹配由數(shù)字和26個英文字母組成的字符串 注意\w包含下劃線_ ^\w+$ 匹配由數(shù)字、26個英文字母或者下劃線組成的字符串 匹配中文字符 普遍使用的正則是[\u4e00-\u9fa5],但這個范圍并不完整。例如: /[\u4e00-\u9fa5]/.test( '?' ) // 測試部首?,返回false 根據(jù)Unicode 5.0版編碼,要準確的判斷一個中文字符要包括: 范圍 含義 范圍 含義 2E80-2EFF CJK 部首補充 2F00-2FDF 康熙字典部首 3000-303F CJK 符號和標點 31C0-31EF CJK 筆畫 3200-32FF 封閉式 CJK 文字和月份 3300-33FF CJK 兼容 3400-4DBF CJK 統(tǒng)一表意符號擴展 A 4DC0-4DFF 易經(jīng)六十四卦符號 4E00-9FBF CJK 統(tǒng)一表意符號 F900-FAFF CJK 兼容象形文字 FE30-FE4F CJK 兼容形式 FF00-FFEF 全角ASCII、全角標點 因此,正確的匹配中文字符正則表達式為: var rcjk = /[\u2E80-\u2EFF\u2F00-\u2FDF\u3000-\u303F\u31C0-\u31EF\u3200-\u32FF\u3300-\u33FF\u3400-\u4DBF\u4DC0-\u4DFF\u4E00-\u9FBF\uF900-\uFAFF\uFE30-\uFE4F\uFF00-\uFFEF]+/g; 如果不希望匹配標點、符號,在正則中去掉對應(yīng)的范圍即可: 3000-303F CJK 符號和標點 FF00-FFEF 全角ASCII、全角標點 匹配雙字節(jié)字符(包括漢字在內(nèi)) [^\x00-\xff],可以用來計算字符串的長度(一個雙字節(jié)字符長度計2,ASCII字符計1),代碼示例如下: console.info( "abc".replace( /[^\x00-\xff]/g,"aa" ).length ) // 3 console.info( "漢字".replace( /[^\x00-\xff]/g,"aa" ).length ) // 4 console.info( "abc漢字".replace( /[^\x00-\xff]/g,"aa").length ) // 7 posted @ 2012-02-22 10:57 段旭 閱讀(270) | 評論 (0) | 編輯 收藏 JQuery總體架構(gòu)
(function( window, undefined ) {
// 構(gòu)造jQuery對象 var jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); } // 工具函數(shù) Utilities // 異步隊列 Deferred // 瀏覽器測試 Support // 數(shù)據(jù)緩存 Data // 隊列 queue // 屬性操作 Attribute // 事件處理 Event // 選擇器 Sizzle // DOM遍歷 // DOM操作 // CSS操作 // 異步請求 Ajax // 動畫 FX // 坐標和大小 window.jQuery = window.$ = jQuery; })(window); 從上邊的注釋看,jQuery的源碼結(jié)構(gòu)相當清晰、條理,不像代碼那般晦澀和讓人糾結(jié)。 posted @ 2012-02-22 10:43 段旭 閱讀(230) | 評論 (0) | 編輯 收藏 自調(diào)用匿名函數(shù) self-invoking anonymous function
1.這是一個自調(diào)用匿名函數(shù)。什么東東呢?在第一個括號內(nèi),創(chuàng)建一個匿名函數(shù);第二個括號,立即執(zhí)行 2.為什么要創(chuàng)建這樣一個“自調(diào)用匿名函數(shù)”呢? 通過定義一個匿名函數(shù),創(chuàng)建了一個“私有”的命名空間,該命名空間的變量和方法,不會破壞全局的命名空間。這點非常有用也是一個JS框架必須支持的功能,jQuery被應(yīng)用在成千上萬的JavaScript程序中,必須確保jQuery創(chuàng)建的變量不能和導入他的程序所使用的變量發(fā)生沖突。 3.匿名函數(shù)從語法上叫函數(shù)直接量,JavaScript語法需要包圍匿名函數(shù)的括號,事實上自調(diào)用匿名函數(shù)有兩種寫法(注意標紅了的右括號): (function() { console.info( this ); console.info( arguments ); }( window ) (function() { console.info( this ); console.info( arguments ); } 4.為什么要傳入window呢? 通過傳入window變量,使得window由全局變量變?yōu)榫植孔兞浚斣趈Query代碼塊中訪問window時,不需要將作用域鏈回退到頂層作用域,這樣可以更快的訪問window;這還不是關(guān)鍵所在,更重要的是,將window作為參數(shù)傳入,可以在壓縮代碼時進行優(yōu)化,看看jquery-1.6.1.min.js:
5.為什么要在在參數(shù)列表中增加undefined呢? 在 自調(diào)用匿名函數(shù) 的作用域內(nèi),確保undefined是真的未定義。因為undefined能夠被重寫,賦予新的值。
6. 注意到源碼最后的分號了嗎? 分號是可選的,但省略分號并不是一個好的編程習慣;為了更好的兼容性和健壯性,請在每行代碼后加上分號并養(yǎng)成習慣。
posted @ 2012-02-22 10:41 段旭 閱讀(1144) | 評論 (0) | 編輯 收藏 jquery設(shè)置元素的readonly和disabledJquery的api中提供了對元素應(yīng)用disabled和readonly屬性的方法,在這里記錄下。如下:
對于為元素設(shè)置readonly屬性和取消readonly屬性的方法還有如下兩種:
$('input').attr("readonly","readonly")//將input元素設(shè)置為readonly $('input').attr("disabled","disabled")//將input元素設(shè)置為disabled
對于為元素設(shè)置disabled屬性和取消disabled屬性的方法還有如下兩種:
$('input').attr("disabled","disabled")//將input元素設(shè)置為disabled posted @ 2012-02-21 15:29 段旭 閱讀(260) | 評論 (0) | 編輯 收藏 |
|||||||||||||||||||