Browse by Tags

CODE-Javascript Hashtable轉Dictionary
這是寫給同事參考的範例: 如何在ASP.NET伺服器端承接Javascript以{“p1”:”v1”, "-123":"v2”}方式傳入的Hashtable? 由於鍵值可能出現負號等.NET不允許的屬性名稱字元,加上有哪些鍵值是動態決定,無法事先掌握,故不適合將其轉型成.NET中的類別,轉成Dictionary<string, string>應是較好的解決方法。 引用JSON.NET(PS: JSON.NET現在也可以 使用NuGet安裝 囉! 按個【讚...
Posted 16 June 2011 04:37 AMJeffrey | with no comments 8,919
Filed under: , ,
CODE-用Javascript模仿.NET Dictionary功能
跟同事討論到如何在Javascript裡實做類似Hashtable或Dictionary的功能。 早期Javascript總被我當成毒蛇猛獸,遇到複雜一點的需求總習慣找別人寫好的Library(例如 這個 )上場頂著,只想在Javascript裡繼續用熟悉的方式應付過去就算了,甚少花時間去研究這威力強大但千變萬化到有點複雜的語言。直到玩了一陣子jQuery,對Javascript稍微有深一點點(也只有一點點)的了解,遇到類似需求,開始試著用Javascript語法實現,不再每次為了一點小事拉一個Library進來...
Posted 15 June 2011 06:09 AMJeffrey | 8 comment(s) 11,130
Filed under: ,
CODE-利用IFrame Proxy進行Cross Domain Scripting
昨天收了一則考題: 如上圖,serverA上有個ParentPage.htm用IFrame內嵌了來自另一台Server(serverB)的網頁ChildPage.htm,ChildPage的網頁高度(Height)會因內容多寡而改變,大部分時候都會產生垂直軸捲。需求是 -- 希望ParentPage能依ChildPage的高度自動放大IFrame高度,避免產生捲軸。 這本來是個簡單的小需求,在ChildPage用$("body").height()取得網頁高度,將它當成參數傳給ParentPage以Javascript修改Iframe的Height就可大功告成...
Posted 28 September 2010 12:42 PMJeffrey | 11 comment(s) 28,418
Filed under: ,
筆記-讓ASP.NET TreeView可以透過Javascript新增節點
同事在網頁上用了 ASP.NET TreeView控件 ,但專案規格中需要由Javascript端完成新增節點的動作,很不幸地,這不是ASP.NET TreeView內建支援的功能。 如果時間充裕的話,我會建議改用jQuery TreeView Plugin,較符合大量Client端客製的需求,但因時程迫在眉睫,且只差這個小功能,所以大家不要考究"破解"ASP.NET TreeView前端設計的意義,把它想像成打破水缸救人就好。 寫完這段程式,等同於小小地破解ASP.NET TreeView前端HTML與Script設計...
CODE-自動產生對應Javascript物件的.NET類別
Abstract : This is a code generator to declare reflected .NET class of Javascript object using JSON.NET JObject features. 這是跟同事在討論系統架構時冒出的議題... 網頁前端將使用者輸入結果組裝成結構單純的Javascript物件,一個欄位對應一個屬性,但有些欄位如電話、地址等可能有多筆,故屬性型別除了字串、數字外,也有會有電話號碼物件陣列,電話號碼物件則包含國碼、區碼、號碼三個屬性...
Posted 06 June 2010 11:01 AMJeffrey | with no comments 9,419
Filed under: , ,
CODE-滲透式jQuery.live()
手上有個需求,要掌握網頁裡所有連結被點擊的狀況。 對jQuery來說這是小菜一碟,利用$("a").live("click", function() { ... });就可在使用者點擊連結時加入自訂邏輯。不過,有挑戰性的部分在於網頁中可能穿插IFrame內嵌其他網頁,原本這個手腳只想動在MasterPage,就打算一口氣將網站所有網頁一網打盡,但$("a")的範圍只限於jQuery所在的window物件範圍,如果連內嵌網頁都要涵蓋,感覺上得在內嵌網頁裡也加上jQuery...
MEMO-網頁列印強迫分頁
專案裡有個網頁列印的需求,在一份清單中,每個項目以Table方式呈現,而列印時不希望項目Table跨頁。以下是我搞出來的解決方案: < style type ="text/css" > .cPrintOnly { page-break-before: always; display: none; } </ style > < script type ="text/javascript" > $( function () ...
Build JScript.NET DLL
稍早發表利用JScript eval()函數提供 高彈性的自訂條件運算式 一文,隨即獲得網友ChrisTorng迴響,提出了關於eval運算式中可能被放入大量迴圈邏輯的問題以及Build JScript.NET DLL滅少CodeDom及Reflection使用的建議。(感謝!!) 關於第一點,的確,只要在執行階段允許外界輸入程式碼執行就要承擔風險!! 即便依照MSDN的說法,eval預設只能在被限制的環境中執行,被禁止接觸檔案、網路等本機資源,已大幅減少被誤用於入侵系統的可能性。但既然開放讓別人自由寫Code...
Posted 02 October 2009 03:24 AMJeffrey | 5 comment(s) 8,117
Filed under: ,
輕量級的js檔打包解決方案
最近在嘗試將一個功能強大的jQuery Plugin【 jqGrid 】整到專案裡,它的功能與彈性讓人印象深刻(不過要上手得花點時間摸索),大家可以直接看 線上展示 ,應該就能感受其威力。 jqGrid有個貼心的設計--將功能模組化。各模組的程式分散在多個js檔,有用到才需要載入,避免Client端載入肥大js只使用其中一丁點功能,白白浪費載入時間及頻寬。(剛好前些時候James Padolsey也提到 這點 ,甚至覺得殺雞不必用牛刀,小功能或許自己寫會更有效率兼便練功) jqGrid提供了兩種做法...
CODE-分贓程式的寫法
把一筆錢依特定的比例分給幾個人是我工作上常要處理的需求。由於金額必須四捨五入到元或分,因此常需面對除不盡的錢要設法攤掉的問題。例如100元平分給三個人,每人33元後,最後的1元要發給三人之一的幸運兒,變成一人34, 兩人33的分配結果。 以前年紀小不懂事,很直覺的想法是先用100*1/3四捨五入得到33把錢分一分,之後再跑一個迴圈(沒辦法,總不能打電話請這三個人過來猜拳吧?)把分剩的錢(總金額大、人數多時餘下數十上百元也是有可能滴)每次一元地發下去,直到發光為止。 說實在說,當初並不覺得這個寫法有什麼不對...
Posted 11 June 2009 05:53 AMJeffrey | 18 comment(s) 20,498
Filed under: , ,
Javascript RegExp Behavior
擺了一個烏龍,本來要寫一段Javascript測試日期格式是否有效,用RegExp做檢測,結果誤加了一個g參數,發現好玩的事: var s = "2009/03/10" ; var regex=/^\d{4}[/]\d{2}[/]\d{2}$/g; alert(regex.test(s)); alert(regex.test(s)); alert(regex.test(s)); alert(regex.test(s)); 以上程式碼,會出現一個true,一個false,再一個true...
Posted 05 March 2009 10:02 AMJeffrey | 3 comment(s) 10,972
Filed under: ,
CODE-用Javascript刪除ASP.NET寫入的Cookie
今天要挑戰的是用Javascript刪除ASP.NET寫入的Cookie。 Client-Side本來就可以由document.cookie取得Cookie,其為一字串,格式類似cookie1=value1;cookie2=value2;cookie3=value3,要用得自行拆解,但不乏現成的共用函數可以代勞。若網頁有引用jQuery, jQuery Cookie Plugin 是不錯的選擇。 要用jQuery Cookie Plugin刪除Cookie可以寫成$.cookie("CookieName"...
Posted 06 February 2009 10:03 AMJeffrey | with no comments 11,228
Filed under: , , ,
CODE-抛棄式Javascript匿名函數的使用
來試試用程式碼寫Blog... //網友wangaguo詢問以下Javascript表示法的用意 ( function (m) { alert(m); })( "Hello" ); //以上的寫法相當於 var x = function (m) { alert(m); } x( "Hello" ); //或是再傳統一點, 用具名函數來示範 function y(m) { alert(m); } y( "Hello" ); //以上三種寫法結果相同...
Posted 17 January 2009 03:42 PMJeffrey | 2 comment(s) 14,822
Filed under: , ,
CODE-動態依序載入JS
最近在翻修以前寫的控件(Web Control),其中有不少操作互動要靠Javascript處理。 當初還不懂jQuery(更精準點說,是jQuery還沒出生),乖乖用Javascript一行行把功能堆出來。用慣了jQuery後,這回要改寫翻新功能,說實在的,我已喪失直接用Javascript Hard-Code的耐性。就好像跟過大哥,體驗過拿手槍汽油彈在街頭火拼的爽快後,就很難再脫離幫派回去過撿石頭木棍跟人打架的生活。(這比喻一整個怪 >_<) 不過,我遇到了一個難題是,由於控件會被其他開發者引用...
Posted 15 January 2009 09:45 AMJeffrey | 12 comment(s) 24,090
Filed under: ,

搜尋

Go

<July 2017>
SunMonTueWedThuFriSat
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345
 
RSS
創用 CC 授權條款
【廣告】
twMVC
最新回應

Tags 分類檢視
關於作者

一個醉心技術又酷愛分享的Coding魔人,十年的IT職場生涯,寫過系統、管過專案, 也帶過團隊,最後還是無怨無悔地選擇了技術鑽研這條路,近年來則以做一個"有為的中年人"自許。

文章典藏
其他功能

這個部落格


Syndication