首页 新闻 会员 周边 捐助

js function中如何获取list的值

0
悬赏园豆:50 [已解决问题] 解决于 2019-04-26 14:35

function sum(){
var a = $('').val();
var b = $('').val();
var sum= a * b;
$('#total').val(sum);
}

    <td>            <input id="purchaseOrdersChildList{{idx}}_number" name="purchaseOrdersChildList[{{idx}}].number" type="text" value="{{row.number}}"    class="form-control " onchange="sum()"/>
    </td>

函数中的参数应该怎么写

琦琳不渡人的主页 琦琳不渡人 | 初学一级 | 园豆:57
提问于:2019-04-26 12:20
< >
分享
最佳答案
0

传入参数:

function sum(obj) {
    var a = $(obj).val();
    console.log(a);
}
<td><input id="purchaseOrdersChildList{{idx}}_number" name="purchaseOrdersChildList[{{idx}}].number" type="text" value="{{row.number}}" class="form-control " onchange="sum(this)"/>  <!-- 参数传入this -->
</td>
收获园豆:50
三人乐乐 | 老鸟四级 |园豆:4823 | 2019-04-26 13:12

请问具体填什么参数。这个是list input的id不是应该每条数据都在变么

琦琳不渡人 | 园豆:57 (初学一级) | 2019-04-26 13:41

@琦琳不渡人: 如果有10条数据,就会生成10个 input,因此要得到10个 input 的值,是这样吗

三人乐乐 | 园豆:4823 (老鸟四级) | 2019-04-26 13:47

@三人乐乐: 是的。我这个是jeeplus框架。只要我在前端新增数据 他会自己帮我生成。就是存在一个list里

琦琳不渡人 | 园豆:57 (初学一级) | 2019-04-26 13:53

@琦琳不渡人: 生成之后,是什么样子,你贴一段生成后的 input 代码给我,我看看多个input是怎样显示的

三人乐乐 | 园豆:4823 (老鸟四级) | 2019-04-26 14:02

@三人乐乐:

琦琳不渡人 | 园豆:57 (初学一级) | 2019-04-26 14:12

@三人乐乐: 不需要我写td 我页面点新增 他就自己帮我生成出来一条了

琦琳不渡人 | 园豆:57 (初学一级) | 2019-04-26 14:20

@琦琳不渡人: 写了例子,只能算实现,你自己优化:

function sum(obj) {
    var text = $(obj)[0].id;
    var index;
    if (text.indexOf('number') >= 0) {
        index = text.replace('purchaseOrdersChildList', '').replace('_number', '');
        var priceId = 'purchaseOrdersChildList' + index + '_price';
        var totalId = 'purchaseOrdersChildList' + index + '_total';
        var a = $(obj).val();
        var b = $('#' + priceId).val();
        var sum = a * b;
        $('#' + totalId).val(sum);
    }
    else if (text.indexOf('price') >= 0) {
        index = text.replace('purchaseOrdersChildList', '').replace('_price', '');
        var numberId = 'purchaseOrdersChildList' + index + '_number';
        var totalId = 'purchaseOrdersChildList' + index + '_total';
        var a = $('#' + numberId).val();
        var b = $(obj).val();
        var sum = a * b;
        $('#' + totalId).val(sum);
    }
}

<input id="purchaseOrdersChildList0_number" type="text" value="2" class="form-control" onchange="sum(this)" />
<input id="purchaseOrdersChildList0_price" type="text" value="30" class="form-control" onchange="sum(this)" />
<input id="purchaseOrdersChildList0_total" type="text" class="form-control" />
三人乐乐 | 园豆:4823 (老鸟四级) | 2019-04-26 14:29

@三人乐乐: 谢谢大佬

琦琳不渡人 | 园豆:57 (初学一级) | 2019-04-26 14:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册