Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/471.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将数字验证为正数_Javascript - Fatal编程技术网

Javascript 将数字验证为正数

Javascript 将数字验证为正数,javascript,Javascript,我已经确认一个数字为正数,但它没有给出正确的答案,即它也接受负数。我哪里出错了 <script type="javascript"> function validatenumber(){ var class1=document.getElementById("class"); if((parseInt)class1.value<0){ alert("Please enter positive integer");

我已经确认一个数字为正数,但它没有给出正确的答案,即它也接受负数。我哪里出错了

<script type="javascript">
    function validatenumber(){
        var class1=document.getElementById("class");
        if((parseInt)class1.value<0){
            alert("Please enter positive integer");
            return false;
        }
    }
</script>

<form name="addbook" action="addbook.php" method="get" onsubmit="validatenumber();">
     Code:<br/><input type="text" name="code"><br/>
     Class:<br/><input type="number" name="class"><br/>
     title:<br/><input type="text" name="title"><br/>
     price:<br/><input type="number" name="price"><br/>
     quantity:<br/><input type="number" name="quantity"><br/>
     category:<br/><input type="text" name="category"><br/>
     <input type="submit" value="submit"><br/>
 </form>

函数validateEnumber(){
var class1=document.getElementById(“类”);
如果((parseInt)class1.value这个:

而不是:

var class1=document.getElementById("class");
及 您有
type=“javascript”
,它应该是
language=“javascript”

这是:

(parseInt)class1.value<0
而不是:

var class1=document.getElementById("class");
及 您有
type=“javascript”
,它应该是
language=“javascript”



validatenumber()是如何调用的?你确定
document.getElementById(“class”)
得到了正确的项吗?为什么评论中还没有人注意到明显的语法错误?不是
(parseInt)class1.value
,而是
parseInt(class1.value)
如果有的话。更好的是,
parseInt(class1.value,10)
或简单地
Number(class1.value)
。有关解决方案,请参见Kevin的答案。仍然接受负数validatenumber()如何被调用?您确定
document.getElementById(“类”)
是否得到了正确的项?为什么评论中没有人注意到明显的语法错误?不是
(parseInt)class1.value
,而是
parseInt(class1.value)
如果有的话。更好的是,
parseInt(class1.value,10)
或者干脆是
Number(class1.value)
。有关解决方案,请参见Kevin的答案。仍然接受负数不要忘记基数!
parseInt(class1.value,10)
仍然是相同的答案忘记了需要更新javascript标记。我还附加了一个JSFIDDLE,我不知道它没有在我的计算机中执行的确切原因。我想这就是原因:我的页面url已经是adminhome.php?action=addbook,所以在提交表单后,它会更改为addbook.php。那么如何克服这个问题呢?如果我理解co正确地以如下形式执行操作:action=“addbook.php?action=addbook”不要忘记基数!
parseInt(class1.value,10)
仍然是相同的答案忘记了需要更新javascript标记。我还附加了一个JSFIDDLE,我不知道它没有在我的计算机中执行的确切原因。我想这就是原因:我的页面url已经是adminhome.php?action=addbook,所以在提交表单后,它会更改为addbook.php。那么如何克服这个问题呢?如果我理解co正确地以以下形式执行操作:action=“addbook.php?action=addbook”
var class1=document.getElementsByName("class")[0];
var class1=document.getElementById("class");