JavaScript表单验证不起作用

JavaScript表单验证不起作用,javascript,asp.net,Javascript,Asp.net,我有一个非常简单的表单和一个非常简单的JavaScript验证器 我想弹出一个警报,如果第一个nae没有填写,只是它似乎没有发出警报,仍然提交 我在这里上传了一把小提琴你检查过x的值了吗?尝试在.value后面加一个分号 var x=document.forms[“subForm”][“ajijt ajijt”].value 您的代码是正确的,但这是JSFIDLE的问题。在检查JSFIDLE的HTML页面后,我发现JavaScript代码已经变成: window.addEvent('load',

我有一个非常简单的表单和一个非常简单的JavaScript验证器

我想弹出一个警报,如果第一个nae没有填写,只是它似乎没有发出警报,仍然提交


我在这里上传了一把小提琴

你检查过x的值了吗?尝试在.value后面加一个分号


var x=document.forms[“subForm”][“ajijt ajijt”].value

您的代码是正确的,但这是JSFIDLE的问题。在检查JSFIDLE的HTML页面后,我发现JavaScript代码已经变成:

window.addEvent('load', function() {
    function validateForm()
     {
       var x=document.forms["subForm"]["ajijjt-ajijjt"].value

        if (x==null || x=="")
        {
            alert("First name must be filled out");
            return false;
        }
      }
});
因此函数
validateForm
不再是一个全局变量,它不能在
提交中访问

您可以使用如下代码:

window.validateForm = function() {}

这将为
validateForm

创建全局变量。确实要从头开始执行客户端表单验证吗?建议:不要。使用JQuery验证或.NET的内置验证。他为什么不进行自己的表单验证是毫无意义的吗?我认为这是一个很好的实践。我认为他正在用asp.net构建它,明智的做法是使用asp.net验证程序。当他有一个好轮子在他的位置上时,他不应该重新发明轮子。