微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery计算具有重复选择的选定选项ID的值

如何解决jQuery计算具有重复选择的选定选项ID的值

| 我什至不知道如何命名此权利。 我有一个页面,需要添加多个选择的总数,并在选择发生更改时显示总数。所有选择的名称都相同,并且选项的值在选项的ID中。到目前为止,我尝试过的一切都非常失败。谢谢。 例:
    <select name=\"options\">   
        <option ID=\"2.2\" value=\"uid\" selected>Option 1</option>
        <option ID=\"1.8\" value=\"uid\">Option 2</option>
        <option ID=\"3\" value=\"uid\">Option 3</option>
    </select>

    <select name=\"options\">   
        <option ID=\"2.2\" value=\"uid\">Option 1</option>
        <option ID=\"1.8\" value=\"uid\" selected>Option 2</option>
        <option ID=\"3\" value=\"uid\">Option 3</option>
    </select>

    <div id=\"total\">Total: 4</div>
    

解决方法

        这是jsFiddle中的函数版本: http://jsfiddle.net/shaneblake/BBhnZ/ HTML:
<select name=\"options\">           
    <option data-value=\"2.2\" value=\"uid\" selected>Option 1</option>
    <option data-value=\"1.8\" value=\"uid\">Option 2</option>        
    <option data-value=\"3\" value=\"uid\">Option 3</option>    
</select>    

<select name=\"options\">           
    <option data-value=\"2.2\" value=\"uid\">Option 1</option>        
    <option data-value=\"1.8\" value=\"uid\" selected>Option 2</option>        
    <option data-value=\"3\" value=\"uid\">Option 3</option>    

</select>    

<div id=\"total\">Total: 4</div>
JavaScript:
$(function() {
    $(\"select[name=\'options\']\").change(function() { updateTotal(); });
    updateTotal();
});

function updateTotal() {
    var newTotal = 0;
    $(\"select[name=\'options\'] option:selected\").each(function() {
        newTotal += parseFloat($(this).data(\'value\'));
    });
    $(\"#total\").text(\"Total: \" + newTotal);
}
    ,        你可以做
var selects = $(\"select[name=options]\");

selects.bind(\"change\",recalculateSelectTotals);

function recalculateSelectTotals() {
    var total = 0;
    selects.find(\"option:selected\").each(function () {
        total += Number(this.id);
    });
    $(\"#total\").text(\"Total: \" + total);
}
但是,应将“ 4”用作值,并保存ID作为标识符。具有相同名称的两个选择也是无效标记。     ,        1:ID不能以数字开头。 2:您不能有多个具有相同ID的项目 3:提供选择的类或ID,以便您读取其值
$(\'#selectID\').val()
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。