Jquery с использованием функции для возврата значения - PullRequest
0 голосов
/ 14 ноября 2018
  1. Создана функция JS для добавления двух чисел в index.js

    function add(number1, number2) {
    var num1 = parseInt(number1);
    var num2 = parstInt(number2);
    var num3 = num1.num2;
    return num3;
    }
    
  2. Создание HTML-страницы в Visual Studio

<head>
<link rel="stylesheet" type="text/css" href="style.css" />
<title></title>
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-3.3.1.js">     
</script>
<script src="index.js"> </script>
</head>
<body>
<h1> Adding two numbers </h1>
<input id="num1" placeholder="0" />
<input id="num2" placeholder="0" />
<button id="btnAdd" type="button"> Add</button>
<input id="total" placeholder="0" readonly />
<script type="text/javascript">
   $('document').ready(function () {
           $('#btnAdd').click(function () {
               $('#total').val(add(num1, num2));
       });
    });
</script>
</body>
</html>

Когда мы нажимаем кнопку «Добавить», должна отображаться общая сумма. Но с этим кодом ничего не происходит

Ответы [ 3 ]

0 голосов
/ 14 ноября 2018

В вашем коде есть ошибки:

1) вы должны получить значения из элементов inputs.

2) Ошибка при опечатке в одном из parseInt() методов.

3) Чтобы добавить номер, где вы используете .? Не должен быть оператором +.

Проверьте следующий пример с исправлениями:

$('document').ready(function()
{
    $('#btnAdd').click(function ()
    {
        var num1 = $("#num1").val();
        var num2 = $("#num2").val();
        $('#total').val(add(num1, num2));
    });
});

function add(number1, number2)
{
    var num1 = parseInt(number1);
    var num2 = parseInt(number2);
    var num3 = num1 + num2;
    return num3;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<h1> Adding two numbers </h1>
<input id="num1" placeholder="0" />
<input id="num2" placeholder="0" />
<button id="btnAdd" type="button"> Add</button>
<input id="total" placeholder="0" readonly />
0 голосов
/ 14 ноября 2018

$('document').ready(function()
{
    $('#btnAdd').click(function ()
    {
        var num1 = ( $("#num1").val()==""?0:$("#num1").val());
        var num2 = ( $("#num2").val()==""?0:$("#num2").val());
        $('#total').val(add(num1, num2));
    });
});

function add(number1, number2)
{
    var num1 = parseInt(number1);
    var num2 = parseInt(number2);
    var num3 = num1 + num2;
    return num3;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<h1> Adding two numbers </h1>
<input id="num1" placeholder="0" />
<input id="num2" placeholder="0" />
<button id="btnAdd" type="button"> Add</button>
<input id="total" placeholder="0" readonly />

Возможно, исключение, если ввод пуст, необходим для вашей проблемы

( $("#num1").val()==""?0:$("#num1").val());
0 голосов
/ 14 ноября 2018

Вы не объявили num1 и num2, когда звоните add.Сделайте ваш код таким:

$('document').ready(function () {
    $('#btnAdd').click(function () {
        $('#total').val(add($("#num1").val(), $("#num2").val()));
    });
});

И он должен работать.

РЕДАКТИРОВАТЬ: Измените вашу add функцию на это:

function add(number1, number2) {
    var num1 = parseInt(number1);
    var num2 = parseInt(number2);
    var num3 = num1 + num2;
    return num3;
}

Оператор .не добавляет два числа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...