【问题标题】:How to dynamically set a property in jquery? [duplicate]如何在jquery中动态设置属性? [复制]
【发布时间】:2015-07-09 20:52:58
【问题描述】:

我正在使用toastr 并希望使用从 ajax 调用返回的 json 对象设置选项。我在动态设置选项属性和值时遇到了一些麻烦。这是示例代码:

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

而 data.toast 是一个 json 对象,看起来像这样:

"toast":{"closeButton":true}

如果我对它进行硬编码,它会是这样的:

toastr.options.closeButton = true;

我应该将迭代器中的 .index 更改为什么,以便它将其评估为变量

【问题讨论】:

    标签: javascript jquery toastr


    【解决方案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 相同。

    【讨论】:

    • 不,javascript中没有关联数组,但有[]对象表示法
    猜你喜欢
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 2018-04-06
    • 1970-01-01
    • 2020-12-26
    • 1970-01-01
    • 1970-01-01
    • 2012-10-09
    相关资源
    最近更新 更多