[JS]怎麼將一個變數的值轉成另外一個變數的名稱?

看板Web_Design作者 ( )時間19年前 (2006/07/01 19:12), 編輯推噓0(0010)
留言10則, 2人參與, 最新討論串1/1
我現在想寫一個javascript 讓網頁中textfield的內容一但有變更過 就在右邊update的chechbox打勾 (網頁在這 http://140.119.75.10/gis/input_road.php) 目的就是讓表單送出以後 PHP只處理update有打勾的那幾列 我textfield的code如下 <input name="name[<? echo $row['road_id'];?>]" type="text" value="<? echo $row['name'];?>" size="16" maxlength="16" onChange="SetUpdate(<? echo $row['road_id'];?>)"> checkbox的code如下 <input name="update[<? echo $row['road_id'];?>]" type="checkbox" value="1"> 現在遇到第一個問題就是'road_id'是zerofill的欄位 javascript會把它當int處理 也就是會自動去掉前面的0 我有沒有辦法強制讓它認定傳入SetUpdate的參數是字串? 不然我還要在SetUpdate裡做補零的動作 <script language="JavaScript"><!-- function SetUpdate(roadid) { //document.form.elements["update["+roadid+"]"].checked=true; } // --></script> 第二個問題就是怎麼將一個變數的值轉成另外一個變數的名稱? SetUpdate要做的工作就是把傳入的roadid的checkbox:update[XXXXX]設為true 可是我試了很久都出錯 可不可以幫我一下 = = 大感恩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.75.10

07/01 19:42, , 1F
1.應該是roadid傳進去之前就少0了吧,跟script無關
07/01 19:42, 1F

07/01 19:44, , 2F
2.document.getElementsByName("update["+roadid+"]")[0]
07/01 19:44, 2F

07/01 19:45, , 3F
.checked = true; 試試看
07/01 19:45, 3F

07/01 19:46, , 4F
debug時可以看網頁原始碼,參數實際上跑出來長怎樣
07/01 19:46, 4F

07/02 02:18, , 5F
網頁原始檔上傳入的數應該沒錯 onChange="SetUpdate(00003)"
07/02 02:18, 5F

07/02 02:18, , 6F
可是在SetUpdate裡面印出roadid就會變成 3
07/02 02:18, 6F

07/02 02:21, , 7F
不過第二個問題已解決 感恩
07/02 02:21, 7F
※ 編輯: dls 來自: 61.230.120.233 (07/02 02:22)

07/02 03:47, , 8F
加上引號試試看
07/02 03:47, 8F

07/02 17:31, , 9F
恩 在傳入的參數外加上單引號就成功了 謝謝!!
07/02 17:31, 9F

07/02 17:34, , 10F
之前都是加雙引號 就失敗 ....||
07/02 17:34, 10F
文章代碼(AID): #14fbYrhA (Web_Design)
文章代碼(AID): #14fbYrhA (Web_Design)