计算多个选择下拉列表

时间:2015-12-06 20:51:08

标签: jquery math multiple-select

我有一个多选菜单,如下:

public void addUser(User user) {
        Session session = HibernateUtil.getSessionFactory().openSession();
        Transaction tx = null;
        try {
            tx = session.beginTransaction();
            session.save(user);
            tx.commit();
        } catch (Exception e) {
            if (tx != null) tx.rollback();
            Logger.saveToLogFile(e, this.getClass().getName());
        } finally {
            session.close();
        }
    }

我想根据数据费用而不是用户选择的值进行计算,因此如果用户同时选择了Starter和Bronze,则ID为的值ammountToPayField'将是25,但是如果他们认为他们只想要青铜,那么'ammountToPayField'中的值将只有15但是看了一会儿我只能找到输入字段和不是多重选择字段。

2 个答案:

答案 0 :(得分:2)

试试这个:

$('#syndicate_group').change(function() {
    var sum = $(this).find(':checked')
                     .map(function() { return parseInt($(this).data('cost'), 10); })
                     .get()
                     .reduce(function(x, y) { return x + y; });

    $('#ammountToPayField').val(sum);
});

请参阅Fiddle

答案 1 :(得分:0)

试试这个:

$("#syndicate_group").change(function () {
var sum = 0;
$("select option:selected").each(function() {
  sum += parseInt($(this).text());
});
$( "#ammountToPayField" ).text( sum ); }).change();