2017-04-25 69 views
0

我需要將var i需要附加到對象聲明的左側。我無法找到如何附加。請幫我擺脫錯誤。將自動增量編號添加到For循環中的JSON對象

如果有任何其他解決方案可用,我也會跟進它。

我曾嘗試下面的代碼

<script type="text/javascript"> 
var text_count=5; 
var textbox = new Object(); 
for (var i = 1; i<=text_count; i++) 
    { 
      textbox.meta_key_textbox='Meta Key'; 
      textbox.meta_key_value_textbox='Meta Value'; 
    }; 

    var textbox_string = JSON.stringify(textbox); 
    alert(textbox_string); 
</script> 

我獨自一人的最後一個值在此。但是我無法獲得循環中的所有值。

但是,當我手動執行此方法它的作品。請在此澄清。

<script type="text/javascript"> 
var text_count=5; 
var textbox = new Object(); 
    textbox.meta_key_textbox='Meta Key'; 
    textbox.meta_key_value_textbox='Meta Value'; 
    textbox.meta_key_textbox1='Meta Key One'; 
    textbox.meta_key_value_textbox1='Meta Value One'; 
    var textbox_string = JSON.stringify(textbox); 
alert(textbox_string); 
</script> 
+0

你的意思只是+ =代替=? – aw04

+0

不,我需要在我的下面的示例中追加'i'值通過循環 –

+0

使用模板文字 – funcoding

回答

-1

你在每次迭代中分配相同的值,可以使用下面的代碼:

<script type="text/javascript"> 
var text_count=5; 
var textbox = new Object(); 
for (var i = 1; i<=text_count; i++) 
    { 
      var text = "meta_key_textbox" + i; 
      var value_text = "meta_key_value_textbox" + i; 
      textbox.text='Meta Key'; 
      textbox.value_text='Meta Value'; 
    }; 

    var textbox_string = JSON.stringify(textbox); 
    alert(textbox_string); 
</script> 
+0

只是通過添加這個本身我得到它 - '文本框['meta_key_textbox'+我]'。 Thanls爲您的努力 –

+0

您的歡迎,希望得到理想的結果 –

-1
var text_count=5; 
var textbox = new Object(); 
var arrKey = []; 
var arrValue = []; 
var values = ["one", "two", "three", "four"]; 

for (var i = 1; i<text_count; i++) { 
    arrKey.push({key: "textbox.meta_key_textbox" + i, value: values[i-1]}); 
    arrValue.push({key: "textbox.meta_key_value_textbox" + i, value: values[i -1]}); 
} 

textbox.meta_key_textbox='Meta Key'; 
textbox.meta_key_value_textbox='Meta Value'; 

for (var i = 1; i<text_count; i++) 
{ 

     textbox[arrKey[i-1].key]= 'Meta Key ' + arrKey[i-1].value; 
     textbox[arrValue[i-1].key]= 'Meta Value ' + arrValue[i-1].value; 
}; 

var textbox_string = JSON.stringify(textbox); 
alert(textbox_string);