javascript - 在 Javascript 循环中分配变量

标签 javascript jquery

我有一个使用 jquery .each 函数的循环,该循环通过带有后缀 _prop_val 的 ID 进行过滤,然后获取前缀并将其用于其他操作,如下面的代码所示。目前我必须使用 if 语句来设置 rlPrice。有没有办法让它进入循环,即 prefixPrice,然后将其设置为 rlPrice

$('[id$="_prop_val"]').each(function(){
    var prefix = this.id.slice(0,2);
    if( $('#'+prefix+'_prop_val').val() != ""){
        $('#'+prefix+'_prop_val').prop('disabled', false).trigger('chosen:updated');
        $('#'+prefix+'_ct_row').show();
        $('#'+prefix+'_deactivate_btn').show();
        if(prefix == "rl"){
            rlPrice = $('#rl option:selected').data("unit-price");
        }
        checkExtra(prefix);
    }else{
        $('#'+prefix+'_container').addClass('inactive');
        $('#'+prefix+'_activate_btn').show();
    }
});

最佳答案

您可能会在这里发现一个更有用的对象。在循环之前定义它:

var price = {};

然后在循环中只需将价格分配给以前缀作为键的属性 - 无需检查条件:

price[prefix] = $('#rl option:selected').data("unit-price");

然后您可以使用前缀访问价格:

var rlPrice = price['rl'];

关于javascript - 在 Javascript 循环中分配变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21141700/

相关文章:

javascript - Vuetify 自动完成组件 : set value

javascript - 如何使用 Chartjs 版本 2.X 设置自定义工具提示事件

javascript - jQuery 删除父级 onclick 不适用于新元素

jquery - 等于 jQuery 对象的变量

jquery - 单击任意位置删除类 jQuery

javascript - 在?中使用多个条件:javascript中的语句

javascript - 为什么在第一个 Promise 解析之后执行链式 Promise 后排队的微任务而忽略链式 Promise?

javascript - html表格的多个过滤器

javascript - 带有 SVG <g> 元素的主干 View 无法正确渲染

jquery - ajax成功后如何禁用signaturePad( Canvas )