Ajax 板


LINE

基於某些理由以及描述方便,我寫了以下一段的JS碼。 <head><title> 未命名頁面 </title> <script type="text/javascript"> var Point_1; var Point_2; var Point_3; var Point_4; var Point_5; function cbChange(PointName,ControlName,Value) { if (document.getElementById(ControlName).checked == true) { PointName = Value; alert(PointName); //alert(Point_1);//註記 } if (document.getElementById(ControlName).checked == false) { alert(PointName); } } </script> </head> <body> <form name="form1" method="post" action="default.aspx" id="form1"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJNzgzNDMwNTMzZGRZmWsrNGbPJujnk93ixuFe+HAvUQ==" /> </div> <div> <input id="cb_1" type="checkbox" name="cb_1" onclick="cbChange(Point_1,'cb_1',1);" /> <input id="cb_2" type="checkbox" name="cb_2" onclick="cbChange(Point_2,'cb_2',2);" /> <input id="cb_3" type="checkbox" name="cb_3" onclick="cbChange(Point_3,'cb_3',3);" /> <input id="cb_4" type="checkbox" name="cb_4" onclick="cbChange(Point_4,'cb_4',4);" /> <input id="cb_5" type="checkbox" name="cb_5" onclick="cbChange(Point_5,'cb_5',5);" /> </div> </form> </body> </html> 網頁佈署後,點按checkbox,勾選(checked=true)時顯示正常。 但反勾選(checked=false)時,其值顯示undifined. 註記:實際上我通過檢查,其實在第一階段就沒有賦值到全域變數上了。 我的疑問與需求是,如何透過網頁控制項,動態賦值JS全域變數? 備註:我基於以下理由,衍生了上述特殊要求 (1)checkbox控制項,乃成千上萬,其賦值(Value),為經由資料庫讀取而出的資料, 透過控制項動態佈署完成。 (2)關於JS函數--cbChange。 原先的做法是新增一組checkbox,就新增一組函數來服務之,運作上沒有問題, 但當checkbox數量越來越多時,函數也必須等量增加,網頁大小因此暴漲, 因此衍生撰寫一通用JS函數,來服務控制項賦值的想法。 不知版上有無先進撰寫過類似的語法,望不吝提示。 --



※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.61.67
1F:推 LaPass:你的中文好奇怪.... 討論問題時可以用白話文 03/09 15:46
2F:推 LaPass:以及你function內是把「PointName」指定為Value,不是把 03/09 15:48
3F:→ LaPass:「Point_1」之類的指定為Value 03/09 15:49
4F:→ Eleganse:不好意思 等下改 寫程式寫到腦袋透逗了 連中文也退化... 03/09 15:49
5F:→ LaPass:如果要那樣指定,要用eval還是evel(忘記怎麼拼),詳細的用 03/09 15:50
6F:→ Eleganse:對 我的疑問就是 如何把Point_1動態賦值 03/09 15:50
7F:→ LaPass:法去GOOGLE會比較清楚。 03/09 15:51
8F:推 LaPass:http://audi.tw/Blog/JavaScript/javascript.eval.asp 這個 03/09 15:52
9F:→ LaPass:不過,如果只是為了判斷有沒有被點選的話,直接用 03/09 15:54
10F:→ LaPass:document.getElementById(ControlName).checked去判斷,不 03/09 15:54
11F:→ LaPass:是比較方便嗎? 要不然變數會很多。如果覺得寫起來麻煩,那 03/09 15:55
12F:→ LaPass:就用jQuary吧 03/09 15:55
13F:→ Eleganse:感謝 等下來研究 03/09 16:01
14F:推 s25g5d4:eval / jQuery... 03/09 19:17
15F:推 s25g5d4:有什麼困難而不用伺服器端程式直接產生HTML嗎? 03/09 19:20
16F:→ Eleganse:我的確是用伺服器端程式產生控制項群以及函數 03/12 11:39
17F:→ Eleganse:為了在版上描述方便 而僅改寫貼上部份JS程式碼 03/12 11:40
18F:→ Eleganse:剛才研究了eval的用法 的確符合我的需求 03/12 11:41
19F:→ Eleganse:實際達成了動態網頁控制項透過通用JS函式賦值動態全域變 03/12 11:42
20F:→ Eleganse:數的效果 03/12 11:42
21F:→ Eleganse:因為以前小弟的寫法 除了網頁控制項、全域變數是動態外 03/12 11:44
22F:→ Eleganse:繫接用於參數傳遞的JS函式也需動態 也就是1對1對1的服務 03/12 11:45
23F:→ Eleganse:當網頁控制項數量大幅增長時 亦衍生了數十萬行的JS函式碼 03/12 11:46
24F:→ Eleganse:在網頁LOAD時,對讀取效率與使用者經驗造成損害 03/12 11:48
25F:→ Eleganse:才會衍生能否用一組"通用JS函式"來服務眾多控制項與全域 03/12 11:49
26F:→ Eleganse:變數的疑問與需求 03/12 11:49







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP