2017-05-27 72 views
0
for (i = 1; i <= arrayNum; i++) { 
    $(".totalCubesBoards"+i+"").val(result.test1); 
} 

我的目標.val(result.test [i]);它不起作用帶NaNJavascript增量問題

你好我有這個代碼,我發現如何增加$(「。totalCubesBoards」+ i +「」),但是當我嘗試以任何方式增加.val(result.test1) (例如:(result.test + i);或(result.test + Number(i));)它根本不起作用。

arrayNum帶來= 2它的作品。 如果你做result.test1 =它的工作 結果是ajax成功,測試來自php後計算

任何想法或答案,將不勝感激。

+0

相反的「編號」變量名,使用數組。 – CBroe

+0

如果你使用類概念'.totalCubesBoards',那麼不需要增加東西,因爲在jQuery中你可以使用這個類。你也可以顯示'console.log(result);'的值是什麼? –

+0

https://jsfiddle.net/kmksg0da/ in php \t $ test = array(); \t $ passedArray = $ _POST ['arrayNum']; \t $ numberOfLines = $ passedArray; \t $ i = 1; \t for($ i; $ i <= $ numberOfLines; $ i ++){ \t \t $ calculation [$ i] = $ _ POST ['calculation')。 $ i]; \t \t $ test ['test'。 $ i] = array_product($ calculation [$ i])/ 1000000000; \t} \t echo json_encode($ test); 我需要增加result.test,所以我可以將值傳遞給totalCubesBoards遞增類 – GvidasL

回答

0

我認爲這與你如何訪問結果對象有關。您可能想嘗試result["test" + i]。看看是否有效。

更新:我在REPL.it測試了它和它的作品如預期

const result = { test1: 1, test2: 2, test3: 3} 

for (let i = 1; i < 4; i++) { 
    const val = result["test" + i] 
    console.log(val) 
} 

則控制檯註銷:

1 
2 
3 
+0

您好,感謝您花時間回答這個問題。不幸的是它不工作,因爲它應該是result.test,之後我需要以某種方式增加它,所以它應該是這樣的.val(result.test + i);但它不會像那樣工作 – GvidasL

+0

如果你說第一個執行不需要增量,你可以傳遞一個簡單的if語句:if(i === 0){$(「。totalCubesBoards」+ i + 「」).VAL(result.test); }'else'$(「。totalCubesBoards」+ i +「」)。val(result [「test」+ i]);'同時把'.val(result.test + i)'不起作用,因爲你沒有訪問結果正確的屬性。 –

+0

嘿亞當,我很笨,謝謝你的時間。它完全解決了我的問題。你是天才。先生,祝你有美好的一天。 :) – GvidasL