Получение значения флажка

Это задание для ... вложенного понимания списка !

[[0 for i in range(10)] for j in range(10)]

0
задан Vikas Malhotra 17 January 2019 в 04:48
поделиться

3 ответа

Поставьте другое имя для флажка и получите значение. Если вы используете одно и то же имя, оно ведет себя как переключатель, поэтому возвращает только одно значение.

<input type="checkbox" name="car1" value="10000" >INVESTMENT ONE
<input type="checkbox" name="car2" value="20000" >INVESTMENT TWO
<input type="checkbox" name="car3" value="30000" >INVESTMENT THREE

А для JS

$("input[name='car1']:checked").val();
$("input[name='car2']:checked").val();  
$("input[name='car3']:checked").val();
0
ответ дан Debasish 17 January 2019 в 04:48
поделиться

Для того, что вы делаете, вы хотите перебрать каждый флажок и объединить значения каждого из них. Для этого лучше всего использовать .each(). Я бы предложил создать переменную Int, а затем, когда вы найдете проверенные элементы, увеличить переменную с новым значением. Затем у вас есть объединенная сумма после цикла.

Рассмотрим следующие улучшения.

$(function() {
  function formatNum(n) {
    return n.toLocaleString("en");
  }

  function calcNetTotal() {
    var tax = 0,
      tax1, tax2, stdDed = 10000;

    var inc = parseInt($("#txt-income").val());
    $("#txt-income").val(formatNum(inc));
    $("#txt-ded").val(formatNum(stdDed));

    tax1 = inc - stdDed;

    $("#txt-gross-inc").val(formatNum(tax1));

    switch (true) {
      case (tax1 > 250000 && tax1 <= 500000):
        tax = (tax1 - 250000) * 5 / 100;
        break;
      case (tax1 > 500000 && tax1 <= 1000000):
        tax = 12000 + ((tax1 - 500000) * 20 / 100);
        break;
      case (tax1 > 1000000):
        tax = 112000 + ((tax1 - 1000000) * 30 / 100);
        break;
    }

    $("#txt-tax").val(formatNum(tax));

    tax2 = tax1 - tax;

    $("#txt-net-income-1").val(formatNum(tax2));
    $("#txt-net-income-2").val(tax2);
  }

  function calcTotalIncome() {
    if ($("#slct-fee").val() == 0) {
      alert("You must select a Fee.");
      $("#slct-fee").focus();
      return false;
    }
    var tax4, tax5, tax6;

    var ni = parseInt($("#txt-net-income-2").val());
    var fee = parseInt($(".fee").val());

    var rd = parseInt($("input[name='gender']:checked").val());

    var ck = 0;
    $("input[name^='car']").each(function(i, el) {
      if ($(el).is(":checked")) {
        ck = ck + parseInt($(el).val());
      }
    });
    var tax4 = parseInt($("#txt-ag-income").val()) || 0;
    var tax5 = parseInt($("#txt-other-income").val()) || 0;

    tax6 = fee + rd + ck + ni + tax4 + tax5;

    $("#txt-total-income").val(formatNum(tax6));

    $("#click3").prop("disabled", false).click(function() {
      window.location.href = "getset-index2.html?tax7=" + tax6 + "&tax8=" + ni + "&tax9=" + fee + "&tax10=" + rd;
    });
  }

  $("#calc-net-income").click(calcNetTotal);
  $("#txt-income").change(calcNetTotal);

  $("#calc-total-income").click(calcTotalIncome);
  $("#txt-net-income-2").change(calcTotalIncome);
});
ul {
  padding: 7px;
  margin: 3px 0;
  list-style: none;
  border: 1px solid #ccc;
  border-radius: 6px;
}

ul li {
  padding: 0;
  margin: 2px;
}

ul li label {
  display: inline-block;
  width: 120px;
  font-size: 85%;
  color: #999;
}

ul li label em {
  color: red;
  font-style: normal;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p>Click the button to get a time-based greeting:</p>
<ul>
  <li><label><em>INCOME</em>:</label><input type="text" id="txt-income" value=""></li>
  <li><label>DEDUCTION:</label><input type="text" id="txt-ded" value="" readonly></li>
  <li><label>GROSS INCOME:</label><input type="text" id="txt-gross-inc" value="" readonly></li>
  <li><label>TAX:</label><input type="text" id="txt-tax" value="" readonly></li>
  <li><label>NET INCOME:</label><input type="text" id="txt-net-income-1" value=""></li>
  <li><button id="calc-net-income">CALCULATE NET INCOME</button></li>
</ul>

<ul>
  <li><label>NET INCOME:</label><input type="text" id="txt-net-income-2" value="" /></li>
  <li><label><em>SELECT FEE</em>:</label>
    <select id="slct-fee" class="fee">
      <option value="0">Select</option>
      <option value="1000">1000</option>
      <option value="2000">2000</option>
      <option value="3000">3000</option>
    </select>
  </li>
  <li><input type="radio" name="gender" value="1500">1500 FOR MALE</li>
  <li><input type="radio" name="gender" value="1000">1000 FOR FEMALE</li>
  <li><input type="radio" name="gender" value="500">500 FOR OTHER</li>
  <li><input type="checkbox" name="car[]" value="10000">INVESTMENT ONE</li>
  <li><input type="checkbox" name="car[]" value="20000">INVESTMENT TWO</li>
  <li><input type="checkbox" name="car[]" value="30000">INVESTMENT THREE</li>
  <li><label>AGRI INCOME:</label><input type="text" id="txt-ag-income" value=""></li>
  <li><label>OTHER SOURCE:</label><input type="text" id="txt-other-income" value=""></li>
  <li><label>TOTAL INCOME:</label><input type="text" id="txt-total-income" value=""></li>
  <li><button id="calc-total-income">CALCULATE TOTAL INCOME</button></li>
</ul>
<button id="click3" disabled="true">Next</button>
<p id="demo"></p>

Надежда, которая помогает.

0
ответ дан Twisty 17 January 2019 в 04:48
поделиться

Вы можете сделать это и использовать событие click, чтобы получить значение флажка:

HTML

<input type="checkbox" name="car1" value="10000" >INVESTMENT ONE

<input type="checkbox" name="car1" value="20000" >INVESTMENT TWO

<input type="checkbox" name="car1" value="30000" >INVESTMENT THREE

jQuery

$("input[name='car1']").click(function (e) {
        if ($(this).is(':checked')) {
            alert($(this).val());
        }
});

Вот мой jsfiddle

https://jsfiddle.net/kb59s0ph/1/

Или вы можете сделать цикл:

$("input[name='car1']").click(function (e) {

        $('input[name=car1]:checked').each(function () {

                alert($(this).val());

        });

});

https : //jsfiddle.net/en9x3sdm/

или подобного цикла:

$("input[name='car1']").click(function (e) {

        $('input[name=car1]').each(function () {

                alert($(this).filter(':checked').val());

        });

});

https://jsfiddle.net/fuxd7cpk/ [ 1115]

0
ответ дан user979331 17 January 2019 в 04:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: