javascript说4比16高

javascript说4比16高,javascript,numbers,Javascript,Numbers,HTML function getNum() { num = $('.slicesinput').val(); num2 = $('.numinput').val(); if (num === "" || num2 === "") { alert('Your inputs may not be empty, else the diagram won\'t work proper...'); } else { if (num >

HTML

function getNum() {
    num = $('.slicesinput').val();
    num2 = $('.numinput').val();
    if (num === "" || num2 === "") {
        alert('Your inputs may not be empty, else the diagram won\'t work proper...');
    } else {
        if (num > num2) {
            alert('Whoops, ' + num + ' is a higher number than ' + num2 + ', please fix this and try again');
        } else if (num === num2) {
            alert('Woops, ' + num + ' and ' + num2 + ' is the same number...');
        } else {
            progressBarUpdate(num, num2);
        }
    }
}
所需的切片数

超出最大切片数

例3+6

当我提交这个时,第一个是ex4,第二个是ex16,它会弹出一个警报
“Woops,4比16大,请修复此问题,然后重试”,但如果我选择4和6,它可以正常工作。。?实际问题是什么?如何解决此问题?

尝试将“num”变量放入Number()函数中,因为它们可能会作为字符串而不是数字进行比较。您还可以将输入的类型更改为数字。

尝试将“num”变量放入number()函数中,因为它们可能会作为字符串而不是数字进行比较。您还可以将输入的类型更改为数字。

当您获得文本框的值时

<p>Number of slices you want</p>
<input name="slices" class="slicesinput" type="text"/>
<p>Out of max slices</p>
<input name="num" class="numinput" type="text"/>
<p>Ex. 3 + 6</p>
<input type="submit" onclick="getNum()"/>
您得到的是字符串值,而不是数字。所以你要比较的实际上是两个字符串,而不是数字。您需要将字符串解析为一个数字才能使其正常工作

num = $('.slicesinput').val();

当你得到文本框的值时

<p>Number of slices you want</p>
<input name="slices" class="slicesinput" type="text"/>
<p>Out of max slices</p>
<input name="num" class="numinput" type="text"/>
<p>Ex. 3 + 6</p>
<input type="submit" onclick="getNum()"/>
您得到的是字符串值,而不是数字。所以你要比较的实际上是两个字符串,而不是数字。您需要将字符串解析为一个数字才能使其正常工作

num = $('.slicesinput').val();

所以您希望如何使用Number函数?请尝试num=Number($('.slicesinput').val();很乐意帮忙。坚持下去,伙计!:)所以您希望如何使用Number函数?请尝试num=Number($('.slicesinput').val();很乐意帮忙。坚持下去,伙计!:)