[問題] javascript for迴圈

看板Web_Design作者 ( )時間13年前 (2011/05/29 16:14), 編輯推噓4(406)
留言10則, 5人參與, 最新討論串1/2 (看更多)
以下是原始程式碼 var dates = $("#test_CHECKDATESTART, #test_CHECKDATEEND").datepicker({ defaultDate: "+1w", changeMonth: false, numberOfMonths: 1, onSelect: function (selectedDate) { var option = this.id == "test_CHECKDATESTART" ? "minDate" : "maxDate", instance = $(this).data("datepicker"), date = $.datepicker.parseDate( instance.settings.dateFormat || $.datepicker._defaults.dateFormat, selectedDate, instance.settings); dates.not(this).datepicker("option", option, date); } }); 我想改用for迴圈讓它變這樣 for(i=1;i<=3;i++) { var dates1 = $("#test1_CHECKDATESTART, #test1_CHECKDATEEND").DATEPICKER( ........... var option = this.id == "test1_CHECKDATESTART" ? "minDate" : "maxDate", .......... dates1.not(this).datepicker("option", option, date); }); var dates2 ..... var dates3 ..... } 請問有辦法做到嗎? 我在dates和test後面加i也不行 請問該如何修改呢? thx -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.43.142.214

05/29 16:15, , 1F
eval("test"+i)
05/29 16:15, 1F

05/29 16:34, , 2F
哇嗚~解決了 感謝:)
05/29 16:34, 2F

05/29 16:38, , 3F
.....不建議用eval 這裡根本不用用到eval阿?
05/29 16:38, 3F

05/29 16:39, , 4F
$("#test" + i + "_CHECKDA...這樣就好了
05/29 16:39, 4F

05/29 16:44, , 5F
用eval的點在?
05/29 16:44, 5F

05/29 16:44, , 6F
dates1不用eval要怎麼搞定
05/29 16:44, 6F

05/29 16:58, , 7F
用個array去存不就好了 況且在for迴圈裡 dates1一直被
05/29 16:58, 7F

05/29 16:58, , 8F
覆蓋 那這樣特地用i幹嘛?
05/29 16:58, 8F
※ 編輯: apiod 來自: 114.43.142.214 (05/29 17:56)

05/29 19:09, , 9F
仔細看一看,我覺得它的問題是在於 closure 的datas會污染到
05/29 19:09, 9F

05/29 19:09, , 10F
而不是 datas1 或 datas2的問題。
05/29 19:09, 10F
文章代碼(AID): #1DuW1flS (Web_Design)
文章代碼(AID): #1DuW1flS (Web_Design)