Javascript返回true不工作

javascript return true not working

本文关键字:工作 true 返回 Javascript      更新时间:2023-09-26

我使用了以下代码进行javascript验证,根据条件

返回true或falsejavascript块

function fnval()
{
 if(document.field.value == "")
 {
  alert("Invalid value");
   return false;
 }else{
   return true;
 }
}
这是我的HTML:
<Input type=submit name="sub" onClick="return fnval()">
因此js块检查字段值是否被输入。如果没有,则抛出一个警告消息并返回false,因此表单没有被提交。
但是如果值不为空,它返回true,表单仍然不会被提交。

我看到一些人在提交表单时返回错误结果。但这恰恰相反……到目前为止,我还没有找到解决方案。
有人能帮我一下吗?

尝试 getElementsByName :

function fnval()
{
 if(document.getElementsByName('field')[0].value == "")
 {
  alert("Invalid value");
   return false;
 }else{
   return true;
 }
}


getElementsByName不支持IE。也许:

function fnval()
{
 if(findInput('field')[0].value == "")
 {
  alert("Invalid value");
   return false;
 }else{
   return true;
 }
}
function findInput(name) {
    var elements = document.getElementsByTagName('input'),
        length = elements.length,
        i = 0,
        results = [];
    for(i; i<length; i++) {
        if (elements[i].name === name) {
            results.push(elements[i]);
        }
    }
    return results;
}

您需要添加表单名称和表单值。比如:

if ( document.formName.fieldName.value == "" )

例如,对于这种HTML:

<form method="post" onsubmit="">
Password: <input name="password" type="text" /><br />
</form>

js:

if (document.form.password.value == "") {
    //empty
}

我建议使用onsubmit的形式,<form ... onsubmit="return fnval()">,尝试添加它并将return false置于函数的基础。

无论你在js中做什么。但是如果你已经填充了表单元素元素的动作标签,表单就会提交。

语法错误:
type="submit"

type=submit