JavaScript - Sumar y restar al aparecer o ocultar div

 
Vista:
sin imagen de perfil

Sumar y restar al aparecer o ocultar div

Publicado por Juan (1 intervención) el 14/11/2017 16:37:50
Hola amigos, ojalá me puedan ayudar, tengo el siguiente problema en un formulario, donde quiero sumar o restar valor al total dependiendo si si los div que tengo ocultos aparecieran visibles, es decir que se sumen si ingreso los montos de las becas y los montos aportes o reste si oculto los montos de las becas y montos aportes. Tengo el siguiente código, pero no me resulta lo que intento hacer... Ayuda por fis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
<script>
function Suma(name){
    param=document.getElementById('ingreso').value;
    param1=document.getElementById('monto_aporte').value;
 
    if($('#aporteNo').is(':checked')){
        document.getElementById('total').value=eval(param);
    }else{
        document.getElementById('total').value=eval(param)+eval(param1);
    }
}
 
function Resta(name){
    param=document.getElementById('ingreso').value;
    param1=document.getElementById('monto_aporte').value;
 
    document.getElementById('total').value=eval(param);
}
 
function SumaS(name){
    param=document.getElementById('ingreso').value;
    param2=document.getElementById('monto_s').value;
 
    if($('#sNo').is(':selected')){
        document.getElementById('total').value=eval(param);
    }else{
        document.getElementById('total').value=eval(param)+eval(param2);
    }
}
function RestaS(name){
    param=document.getElementById('ingreso').value;
    param2=document.getElementById('monto_s').value;
 
    document.getElementById('total').value=eval(param);
}
 
$(document).ready(function (){
    $('input[name=aporte]').click(function (){
        if($(this).val()==1){
            $("#monto").fadeIn();
        }else{
            $("#monto").fadeOut();
        }
    });
 
});
 
function mostrar(id) {
    if (id!=8) {
        $("#montoS").show();
    }
    if (id==0 || id==8) {
        $("#montoS").hide();
    }
}
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<table width="534" border="0" cellspacing="3" cellpadding="0">
    <tr>
      <td width="137" class="label">&nbsp;</td>
      <td width="182">&nbsp;</td>
      <td width="195" class="ejemplos">&nbsp;</td>
    </tr>
 
      <td height="36" class="label">Total Liquido</td>
      <td>
        <input name="ingreso" type="text" id="ingreso" value="500000" onchange="javascript:Suma();"  onKeyPress="return isNumberKey(event)"/>
      </td>
      <td class="txtAdvertencia">&nbsp;</td>
    </tr>
   <tr>
      <td class="txtBoldNormal">Tienes beca</td>
      <td>
          <select name="ts" id="ts" onChange="mostrar(this.value);">
            <option value="0">--</option>
            <option value="8"  id="sSi" <?php if($pdata['ts']=="8") { echo "selected=\"selected\"";}?> onclick="javascript:RestaS();">Ninguno</option>
            <option value="9"  id="sNo" <?php if($pdata['ts']=="9") { echo "selected=\"selected\"";}?> onclick="javascript:SumaS();">1</option>
            <option value="10" id="sNo" <?php if($pdata['ts']=="10"){ echo "selected=\"selected\"";}?> onclick="javascript:SumaS();">2</option>
            <option value="11" id="sNo" <?php if($pdata['ts']=="11"){ echo "selected=\"selected\"";}?> onclick="javascript:SumaS();">3  ó más</option>
          </select>
          </td>
      <td >&nbsp;</td>
    </tr>
    <tr id="montoS" style="display:<?PHP echo ($pdata['ts']==9 || $pdata['ts']==10 || $pdata['ts']==11)?"checked=\"block\"":"none";?>">
      <td height="36" class="label">Monto</td>
      <td><input id="monto_s" name="monto_s" type="text" value="<?php if($pdata['monto_s']!=""){echo $pdata['monto_s'];}else{echo "0";};?>" onchange="javascript:SumaS();" onKeyPress="return isNumberKey(event)"/>
     </td>
      <td class="txtAdvertencia">&nbsp;</td>
    </tr>
    <tr>
      <td class="txtBoldNormal">&nbsp;</td>
      <td>&nbsp;</td>
      <td class="txtAdvertencia">&nbsp;</td>
    </tr>
    <tr>
      <td height="35" class="label">Aportes Extras</td>
      <td  class="label">
        <input type="radio" name="aporte" id="aporteSi" value="1" <?php if($pdata['aporte']=="1"){ echo "checked";}?> onclick="javascript:Suma();"/>Si
        <input type="radio" name="aporte" id="aporteNo" value="0" <?php if($pdata['aporte']=="0"){ echo "checked";}?> onclick="javascript:Resta();"/>No
      </td>
      <td></td>
    </tr>
    <tr>
      <td class="txtBoldNormal">&nbsp;</td>
      <td>&nbsp;</td>
      <td class="txtAdvertencia">&nbsp;</td>
    </tr>
    <tr id="monto" style="display:<?PHP echo ($pdata['aporte']==1)?"checked=\"block\"":"none";?>">
      <td height="36" class="label">Monto Aporte</td>
      <td><input id="monto_aporte" name="monto_aporte" type="text"  value="<?php if($pdata['monto_aporte']!=""){echo $pdata['monto_aporte'];}else{echo "0";};?>" onchange="javascript:Suma();" onKeyPress="return isNumberKey(event)"/>
     </td>
      <td>&nbsp;</td>
    </tr>
 
    <tr>
      <td class="label">INGRESOS TOTALES (ingresos)</td>
      <td><span>
        <input name="total" type="text" id="total" value="<?php if($pdata['total']!=""){echo $pdata['total'];}else{echo "0";};?>" onchange="javascript:Suma();SumaS();" onKeyPress="return isNumberKey(event)" />
      </span></td>
      <td>&nbsp;</td>
    </tr>
</table>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder