1

我有两个(命名为box1,box2)多个选定的表单和两个按钮,按设计在它们之间添加/删除。Box1 将具有值1、2、3、4、5 的项目a、b、c、d、e。我已经编写了添加和删除的代码。现在,当我从 box1 添加 a、b、c、d 到 box2 时,我需要获取所有要显示的项目的总和,即 10,当我从 box2 中删除一个项目时,即b 然后它应该告诉我 8.我想使用 jquery 和 css 来做。请帮助我或鼓励任何教程。我只是一个初学者,所以请帮助我。谢谢 :)

我试过这个

<script>

$(document).ready(function() {

    $('#btn-add').click(function(){
        $('#select-from option:selected').each( function() {
                $('#select-to').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>");

        });
    });
    $('#btn-remove').click(function(){
        $('#select-to option:selected').each( function() {
            $(this).remove();
        });
    });

});
</script>


</head>
<body>
<form>
  <fieldset>

    <select name="selectfrom" id="select-from" multiple size="5">
      <option value="1">Item 1</option>
      <option value="2">Item 2</option>
      <option value="3">Item 3</option>
      <option value="4">Item 4</option>
    </select>

    <a href="JavaScript:void(0);" id="btn-add">Add &raquo;</a>
    <a href="JavaScript:void(0);" id="btn-remove">&laquo; Remove</a>

    <select name="selectto" id="select-to" multiple size="5">

    </select>

  </fieldset> 
4

3 回答 3

0

我不知道我是否理解正确,但是既然你知道如何复制元素,那么在完成之后(从 box1 和 box2)使用 jQuery 从 box2 中获取所有元素并使用each方法来解析每个<option>. 如果你在 ie 之前定义了一个变量。var sum = 0;然后为其添加值。然后你可以显示一个总和

-- 或者,您可以在复制时添加价值并立即更改选项值的总和

于 2013-01-22T09:14:50.823 回答
0

您是否要计算选择框中添加的选项的值 2 表示这将对您有所帮助。演示

<a href="JavaScript:void(0);" id="btn-count">&laquo; Count</a>  

$(document).ready(function() {

    $('#btn-add').click(function(){
        $('#select-from option:selected').each( function() {
                $('#select-to').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>");

        });
    });
    $('#btn-remove').click(function(){
        $('#select-to option:selected').each( function() {
            $(this).remove();
        });
    });


    $('#btn-count').click(function(){
       var a =0;
         $('#select-to option').each( function() {
            a = a+ parseInt($(this).val());           
         });
         alert(a);
     });   
});
于 2013-01-22T09:20:05.453 回答
0

我认为你的意思的演示

注意:我JavaScript:从您的链接中删除了伪协议并添加了 e.preventDefault()

$(document).ready(function() {
    var val1 = 0;

    $('#btn-add').click(function(e){
        e.preventDefault();
        $('#select-from option:selected').each( function() {
           val1 += parseInt($(this).val(),10);
           $('#select-to').append("<option value='"+$(this).val()+"'>"+$(this).text()+"</option>");

        });
        $("#val1").html(val1);
    });
    $('#btn-remove').click(function(e){
        e.preventDefault();
        $('#select-to option:selected').each( function() {
           val1 -= parseInt($(this).val(),10);                
            $(this).remove();
        });
        $("#val1").html(val1);
    });

});
于 2013-01-22T09:17:44.030 回答