首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数字的表单验证

数字的表单验证
EN

Stack Overflow用户
提问于 2014-09-01 11:31:11
回答 3查看 62关注 0票数 0

我有这段代码,它有一个表单和一个脚本,如果输入的值是一个数字,就验证它。问题是,当我单击submit/add按钮时,它将直接转到addcontribution.php。

另外,我也喜欢添加确认对话框。比如“确认加(金额)?”如果是,它将继续到addcontribution.php,如果不是,它将返回到自己并重置字段。

代码语言:javascript
复制
<form form="CONTRIFORM" name='contribution' method="POST" Action="addcontribution.php" onSubmit="return formvalidation2();">
  <center>
    Amount:
    <input type="text" name="contriamnt" id="contriamnt" size="15" placeholder=" Amount"></br></br>
    <button id="searchbutton" type="submit" name="submit" value="Submit">ADD</button></br>
  </center>
</form> 

<script>

function formvalidation2() {
    var amntDATA = document.registration.contriamnt;  
    if(allnumber(amntDATA)) {  
        if(ChangeText()) {
            if(new_tab()) {
            }
        }
    } 
    return false;  
}

function allnumber(amntDATA) {   
    var x = /^[0-9]+$/;  
    if(amntDATA.value.match(x)) {  
        return true;
    } else {  
        alert('Invalid Amount.');  
        return false;  
    }
}
</script>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-09-01 11:35:02

表单名称不匹配。

代码语言:javascript
复制
var amntDATA = document.contribution.contriamnt; 
票数 2
EN

Stack Overflow用户

发布于 2014-09-01 11:43:10

试试这个:

代码语言:javascript
复制
<form form="CONTRIFORM" name='contribution' method="POST" Action="addcontribution.php" onSubmit="return formvalidation2();">
<center>
    Amount: <input type="text" name="contriamnt" id="contriamnt" size="15" placeholder=" Amount"></br></br>
    <button id="searchbutton" type="submit" name="submit" value="Submit">ADD</button></br>
</center>
</form> 

<script>

function formvalidation2()  
{
var amntDATA = document.contribution.contriamnt;  
alert(amntDATA);
if(allnumber(amntDATA))  
{  
   alert("number");
   return true;
}else{
    alert("not a number");
    return false;
}

}

function allnumber(amntDATA)  
{   
var x = /^[0-9]+$/;  
if(amntDATA.value.match(x))  
{  
    return true;
}  
else  
{  
alert('Invalid Amount.');  
return false;  
}

}

</script>
票数 0
EN

Stack Overflow用户

发布于 2014-09-01 11:53:59

使用jquery代替javascript.Code很简单

代码语言:javascript
复制
$("form").submit(function(){

    var value = $("#contriamnt").val();
    var x = /^[0-9]+$/;  
    if(value.match(x)) {  
        return true;
    } else {  
        alert('Invalid Amount.');  
        return false;  
    }


});

HTML:

代码语言:javascript
复制
<form form="CONTRIFORM" name='contribution' method="POST" Action="addcontribution.php" >
<center>
    Amount: <input type="text" name="contriamnt" id="contriamnt" size="15" placeholder=" Amount"></br></br>
    <button id="searchbutton" type="submit" name="submit" value="Submit">ADD</button></br>
</center>
</form>

您可以使用jquery对话框插件弹出对话框http://jqueryui.com/dialog/#modal-confirmation

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25604905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档