2015-07-09 67 views
0

我正在使用toastr並希望使用從ajax調用返回的json對象來設置選項。我在動態設置選項屬性和值時遇到了一些麻煩。下面是示例代碼:如何在jquery中動態設置屬性?

if(data.toast){ 
    $.each(data.toast, function(index, element) { 
    toastr.options.index = element; 
    }); 
} 

而且data.toast是一個JSON對象,看起來像這樣:

"toast":{"closeButton":true} 

這是它會是什麼樣子,如果我硬編碼是:

toastr.options.closeButton = true; 

我應該如何更改迭代器中的.index,以便將其評估爲變量

回答

1
if(data.toast){ 
    $.each(data.toast, function(index, element) { 
    toastr.options[index] = element; 
    }); 
} 

將其作爲options.index嘗試訪問index的屬性,而不是索引的的屬性。

上面的方法可以解決這個問題。它將對象視爲一種關聯數組。因此toastr.options[index]評估爲toastr.options["closeButton"],這與toastr.options.closeButton相同。

+0

不,在javascript中沒有關聯數組,但有'[]'對象表示法 – charlietfl

+0

因此,「排序」 –