Jquery操作select
posted @ 2012-04-05 14:00 段旭 閱讀(1148) | 評論 (0) | 編輯 收藏
隨筆 - 42, 文章 - 1, 評論 - 0, 引用 - 0
|
Jquery操作select
摘要: 以下是操作 下拉列表的常用功能:1.獲取列表項中候選項的數目。2.獲得選中項的索引值。3.獲得當前選中項的值4.設定選擇值5.設定選擇項 1 //得到select項的個數 2 jQuery.fn.size = function(){ ... 閱讀全文
posted @ 2012-04-05 14:00 段旭 閱讀(1148) | 評論 (0) | 編輯 收藏 Oracle全角変換SELECT UTL_I18N.TRANSLITERATE (TO_MULTI_BYTE(NAME), 'KANA_HIRAGANA') NAME--半角カタカナ?英數字-->全角ひらかな posted @ 2012-03-27 18:52 段旭 閱讀(640) | 評論 (0) | 編輯 收藏 mysql 取整函數1.ceil () /ceiling() 向上取整 ex: ceil(1.2) = 2 2.floor () 向下取整 ex: floor(1.2) = 1 3.round() 四舍五入 posted @ 2012-03-07 16:32 段旭 閱讀(2375) | 評論 (0) | 編輯 收藏 mysql 日期這里是一個使用日期函數的例子。下面的查詢選擇了所有記錄,其date_col的值是在最后30天以內: 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參數是一個DATE值并且你的計算僅僅 mysql> SELECT "1997-12-31 23:59:59" + INTERVAL 1 SECOND; 如果你指定太短的間隔值(不包括type關鍵詞期望的間隔部分),MySQL假設你省掉了間隔值的最左面部分。例如, mysql> select DATE_ADD('1998-01-30', Interval 1 month); 注意,從前面的例子中詞INTERVAL和type關鍵詞不是區分大小寫的。 TO_DAYS()不打算用于使用格列高里歷(1582)出現前的值。 FROM_DAYS(N) TO_DAYS()不打算用于使用格列高里歷(1582)出現前的值。 DATE_FORMAT(date,format) 所有的其他字符不做解釋被復制到結果中。 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列,函數將直接接受值,沒有隱含的“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) 其他修飾符產生一個NULL值或0。 CURRENT_DATE CURTIME() CURRENT_TIME NOW() SYSDATE() CURRENT_TIMESTAMP UNIX_TIMESTAMP() UNIX_TIMESTAMP(date) 當UNIX_TIMESTAMP被用于一個TIMESTAMP列,函數將直接接受值,沒有隱含的“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) | 編輯 收藏 構建jQuery對象(function( window, undefined ) {
var jQuery = (function() { // 構建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(優化) // 字符串:HTML標簽、HTML字符串、#id、選擇器表達式 // 函數(作為ready回調函數) // 最后返回偽數組 } };
// Give the init function the jQuery prototype for later instantiation jQuery.fn.init.prototype = jQuery.fn;
// 合并內容到第一個參數中,后續大部分功能都通過該函數擴展 // 通過jQuery.fn.extend擴展的函數,大部分都會調用通過jQuery.extend擴展的同名函數 jQuery.extend = jQuery.fn.extend = function() {};
// 在jQuery上擴展靜態方法 jQuery.extend({ // ready bindReady // isPlainObject isEmptyObject // parseJSON parseXML // globalEval // each makeArray inArray merge grep map // proxy // access // uaMatch // sub // browser });
// 到這里,jQuery對象構造完成,后邊的代碼都是對jQuery或jQuery對象的擴展 return jQuery;
})();
window.jQuery = window.$ = jQuery; })(window); posted @ 2012-02-22 13:10 段旭 閱讀(777) | 評論 (0) | 編輯 收藏 常用正則式常用的數字正則(嚴格匹配)
正則 含義
^[1-9]\d*$ 匹配正整數
^-[1-9]\d*$ 匹配負整數
^-?[1-9]\d*$ 匹配整數
^[1-9]\d*|0$ 匹配非負整數(正整數 + 0)
^-[1-9]\d*|0$ 匹配非正整數(負整數 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$ 匹配正浮點數
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$ 匹配負浮點數
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$ 匹配浮點數
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$ 匹配非負浮點數(正浮點數 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$ 匹配非正浮點數(負浮點數 + 0) 常用字符串正則 正則 含義 補充 ^[A-Za-z]+$ 匹配由26個英文字母組成的字符串 或 /^[a-z]+$/i ^[A-Z]+$ 匹配由26個英文字母的大寫組成的字符串 ^[a-z]+$ 匹配由26個英文字母的小寫組成的字符串 ^[A-Za-z0-9]+$ 匹配由數字和26個英文字母組成的字符串 注意\w包含下劃線_ ^\w+$ 匹配由數字、26個英文字母或者下劃線組成的字符串 匹配中文字符 普遍使用的正則是[\u4e00-\u9fa5],但這個范圍并不完整。例如: /[\u4e00-\u9fa5]/.test( '?' ) // 測試部首?,返回false 根據Unicode 5.0版編碼,要準確的判斷一個中文字符要包括: 范圍 含義 范圍 含義 2E80-2EFF CJK 部首補充 2F00-2FDF 康熙字典部首 3000-303F CJK 符號和標點 31C0-31EF CJK 筆畫 3200-32FF 封閉式 CJK 文字和月份 3300-33FF CJK 兼容 3400-4DBF CJK 統一表意符號擴展 A 4DC0-4DFF 易經六十四卦符號 4E00-9FBF CJK 統一表意符號 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; 如果不希望匹配標點、符號,在正則中去掉對應的范圍即可: 3000-303F CJK 符號和標點 FF00-FFEF 全角ASCII、全角標點 匹配雙字節字符(包括漢字在內) [^\x00-\xff],可以用來計算字符串的長度(一個雙字節字符長度計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總體架構
(function( window, undefined ) {
// 構造jQuery對象 var jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); } // 工具函數 Utilities // 異步隊列 Deferred // 瀏覽器測試 Support // 數據緩存 Data // 隊列 queue // 屬性操作 Attribute // 事件處理 Event // 選擇器 Sizzle // DOM遍歷 // DOM操作 // CSS操作 // 異步請求 Ajax // 動畫 FX // 坐標和大小 window.jQuery = window.$ = jQuery; })(window); 從上邊的注釋看,jQuery的源碼結構相當清晰、條理,不像代碼那般晦澀和讓人糾結。 posted @ 2012-02-22 10:43 段旭 閱讀(230) | 評論 (0) | 編輯 收藏 自調用匿名函數 self-invoking anonymous function
1.這是一個自調用匿名函數。什么東東呢?在第一個括號內,創建一個匿名函數;第二個括號,立即執行 2.為什么要創建這樣一個“自調用匿名函數”呢? 通過定義一個匿名函數,創建了一個“私有”的命名空間,該命名空間的變量和方法,不會破壞全局的命名空間。這點非常有用也是一個JS框架必須支持的功能,jQuery被應用在成千上萬的JavaScript程序中,必須確保jQuery創建的變量不能和導入他的程序所使用的變量發生沖突。 3.匿名函數從語法上叫函數直接量,JavaScript語法需要包圍匿名函數的括號,事實上自調用匿名函數有兩種寫法(注意標紅了的右括號): (function() { console.info( this ); console.info( arguments ); }( window ) (function() { console.info( this ); console.info( arguments ); } 4.為什么要傳入window呢? 通過傳入window變量,使得window由全局變量變為局部變量,當在jQuery代碼塊中訪問window時,不需要將作用域鏈回退到頂層作用域,這樣可以更快的訪問window;這還不是關鍵所在,更重要的是,將window作為參數傳入,可以在壓縮代碼時進行優化,看看jquery-1.6.1.min.js:
5.為什么要在在參數列表中增加undefined呢? 在 自調用匿名函數 的作用域內,確保undefined是真的未定義。因為undefined能夠被重寫,賦予新的值。
6. 注意到源碼最后的分號了嗎? 分號是可選的,但省略分號并不是一個好的編程習慣;為了更好的兼容性和健壯性,請在每行代碼后加上分號并養成習慣。
posted @ 2012-02-22 10:41 段旭 閱讀(1145) | 評論 (0) | 編輯 收藏 jquery設置元素的readonly和disabledJquery的api中提供了對元素應用disabled和readonly屬性的方法,在這里記錄下。如下:
對于為元素設置readonly屬性和取消readonly屬性的方法還有如下兩種:
$('input').attr("readonly","readonly")//將input元素設置為readonly $('input').attr("disabled","disabled")//將input元素設置為disabled
對于為元素設置disabled屬性和取消disabled屬性的方法還有如下兩種:
$('input').attr("disabled","disabled")//將input元素設置為disabled posted @ 2012-02-21 15:29 段旭 閱讀(261) | 評論 (0) | 編輯 收藏 網友整理三亞防宰攻略手冊針對微博熱議的“三亞旅游被宰”經歷,新浪旅游根據網友留言及評論整理了一份三亞拒絕挨宰攻略。 跟團游 團隊旅行中,最大塊的挨宰費主要是購物店、燒香;小的費用主要是看人妖、潛水、互動節目。總之最后你的花銷很可能超出團費。 有些人在當地報名參加“一日游”等,常見的被宰方式是從這家旅行社被“賣”到另一家旅行社,可能還要忍受非常惡劣的服務態度。 防宰攻略: 1.選擇正規、規模大的旅行社。 2.在簽訂合同的時候,細節一定要問清楚,有些東西需要額外注明在合同中,以確保自身的利益能夠得到保障。 3.在切身利益受到侵害的時候,立刻撥打相關投訴電話,必要時報警。 自助游 【吃海鮮】 要么缺斤短兩,要么就是被天價的海鮮所“打敗”,少則幾百,多則幾千,普通游客難以承受。 防宰攻略: 1.如果有導游、出租車司機、摩托車夫、三輪車夫向你極力推薦某某海鮮店,要多留個心眼,或許到了那里你就身不由己了……不要聽信路邊發廣告、發名片的游說。 2.吃海鮮可以考慮海鮮市場。可以買海鮮直接加工,成本相對低廉,方便且便宜。 3.遠離黑心海鮮店。 黑心海鮮店一般分布在高端酒店旁或者離市區較遠的地方,騙人的方法有的極其夸張。 A.當你指向一個東西、問價格的時候,小二順勢拿出就在你眼前拍死,你還沒回過神這個東西已經需要你來買單了! B.你問價格的時候,老板熱情地告訴你不貴啦才4元每斤啦,但等你結賬的時候可能是40元每斤或者400元每斤。 C.嚴重缺斤短兩。 【買水果】 在三亞買美味的熱帶水果,也要格外注意。 1.自帶小秤。 缺斤短兩是小商販們最慣用的伎倆,而我們也應該同樣細心一些,稱一稱所購買的物品到底多重(先談價錢再亮秤)。 2.去正規的水果市場,店鋪多,市場管理相對完善。 3.如果當地有熟人,可以讓他帶你去買。 【景點游玩】 1.網上提前訂門票。一般網絡訂票能更優惠,建議提前購票。 2.不必每個景點都去,去一些重點和有代表性的景點便可。 3.充分利用公交車、旅游專線巴士、機場巴士等公共資源。 4.包車線路一定要自己設計,否則容易被宰。 5.慎買珍珠、水晶等。 6.三輪車和兩輪摩的,建議不要乘坐,危險并且很容易被“宰”。 7.住小酒店,建議不要讓服務員幫你叫車,說不定會叫來跟他們有利益鏈條的相關車輛。 8.無招勝有招。在亞龍灣、海棠灣的酒店盡情享受陽光,盡量避免外出。 posted @ 2012-01-30 17:12 段旭 閱讀(226) | 評論 (0) | 編輯 收藏 |
|||||||||||||||||||