Javascript 转换从js函数返回的值

Javascript 转换从js函数返回的值,javascript,Javascript,如果(asset_type.indexOf(“true,false”)>=0)尝试完成条件语句时,以下js返回一个错误,如下所示 我已尝试将资产类型转换为字符串。。。一切都失败了 错误: asset_type.get不是函数 下面的代码不会返回 console.log("Asset Type (row " + i + "): " + asset_type ); 资产类型(第12行):真、假 代码: $("#myTable_asset").children("tbody").children("

如果(asset_type.indexOf(“true,false”)>=0)尝试完成条件语句时,以下js返回一个错误,如下所示

我已尝试将资产类型转换为字符串。。。一切都失败了

错误

asset_type.get不是函数

下面的代码不会返回

console.log("Asset Type (row " + i + "): " + asset_type );
资产类型(第12行):真、假

代码:

$("#myTable_asset").children("tbody").children("tr").each(function (i) {
    var $this = $(this);
    var my_td = $this.children("td");
    var second_col = my_td.eq(1);
    var third_col = my_td.eq(2);
    second_col.find("input[type=text]").val(function(i, val) {
        return val.replace(/\$|,/g, '');
    });

    var asset_value =   second_col.find("input[type=text]").val();
    var asset_type = third_col.find(":checkbox").map(function(_, el) { return el.checked }).get()

    console.log("Asset Type (row " + i + "): " + asset_type );

    try {
        if ( '' != asset_type)
        {

            console.log("Asset Cost (row " + i + "): " + parseFloat(asset_value));
            console.log("Asset Type (row " + i + "): " + asset_type );

            if( asset_type.indexOf("true,false") >= 0  )
            {
                capex_value += parseFloat(asset_value);
            }

            if(asset_type.get().indexOf("false,true") >= 0  )
            {
                opex_value += parseFloat(asset_value);
            }

        }
    }

    catch(err) {
        console.log(err.message);
    }
});
打印输出的third_col.html()提供以下内容:

<fieldset data-role="controlgroup" data-type="horizontal" class="ui-controlgroup ui-controlgroup-horizontal ui-corner-all">
    <div class="ui-controlgroup-controls ">
        <div class="ui-checkbox ui-mini">
            <label for="asset_allocation_capex_19" class="ui-btn ui-corner-all ui-btn-inherit ui-checkbox-off ui-first-child">
                Capex
            </label>
            <input type="checkbox" name="asset_allocation_capex_19" id="asset_allocation_capex_19" data-mini="true">
        </div>                                                                                                                              
        <div class="ui-checkbox ui-mini">
            <label for="asset_allocation_opex_19" class="ui-btn ui-corner-all ui-btn-inherit ui-checkbox-on ui-btn-active ui-last-child">
                Opex
            </label>
           <input type="checkbox" name="asset_allocation_opex_19" id="asset_allocation_opex_19" data-mini="true" checked="">
        </div>                                                                                                                          
    </div>
</fieldset> 

资本支出
运营成本

资产类型是[true,false]的数组。 您不能执行
get()
indexOf('true,false')
。 你可以做:

var first = asset_type[0], scond = asset_type[1];
if(first=== true && second === false){...}
else if(first=== false && second === true){...}

我想您忘了已经在jquery元素上使用了get():

var asset_type = third_col.find(":checkbox").map(function(_, el) {
return el.checked }).get()
检查一下你的代码