基本上,我有一个非常简单的HTML表单,当我提交该表单时,它将执行POST到/ productos并运行一个JS脚本来验证该表单,如果表单不正确,则显示错误,都很好。

但是我想做的一件事是,如果表单未通过验证,则“取消” POST,有什么办法吗?

我曾经考虑过要通过javascript函数而不是表单本身来进行POST,但是我不知道该怎么做

的HTML:

<form name="registro" action="/productos" method='post' onsubmit="return validacion()">
<div>titulo</div>
<input type="text", name="titulo"/>
<input type="submit">
</form>


js验证:

function validacion(){
    var titulo=document.registro.titulo.value;
    if (titulo == ""){
        alert("error, titulo cant be empty")

    } else if (titulo.length > 100){
        alert("error, titulo cant be more than 100 characters long")
    }

最佳答案

使validacion()返回true或false

function validacion(){
    var titulo=document.registro.titulo.value;
    if (titulo == ""){
        alert("error, titulo cant be empty")
        return false;

    } else if (titulo.length > 100){
        alert("error, titulo cant be more than 100 characters long")
        return false;
    }

    return true;
}

09-07 13:09