我正在使用toastr并希望使用从ajax调用返回的json对象设置选项。我在动态设置options属性和值时遇到了一些麻烦。以下是示例代码:
if(data.toast){
$.each(data.toast, function(index, element) {
toastr.options.index = element;
});
}
data.toast是一个json对象,如下所示:
"toast":{"closeButton":true}
如果我硬编码它会是什么样子:
toastr.options.closeButton = true;
我应该如何更改迭代器中的.index,以便将其作为变量进行评估
答案 0 :(得分: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
相同。