javascript - 如何使用js验证输入并将输入存储在数据库中

标签 javascript python

Javascript代码:

 <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.js"></script>
<script type="text/javascript">
        function validate()
        {
            var FirstName = document.getElementById('FN').value;
            var LastName  = document.getElementById('LN').value;
            var Username  = document.getElementById('userName').value;
            var Email     = document.getElementById('emailId').value;
            var Password  = document.getElementById('passWord').value;

            if (FirstName == "")
            {
                alert("Please Enter First Name");
                return false;
            }
            if (LastName == "")
            {
                alert("Please Enter Last Name");
                return false;
            }
            if (Username == "")
            {
                alert("Username Should Not Contain Spaces");
                return false;
            }
            if (Email == "")
            {
                alert("Please Enter Email");
                return false;
            }
            if (Password == "")
            {
                alert("Password Should Not Contain Spaces");
                return false;
            }
            var emailPat = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/;
            var EmailmatchArray = Email.match(emailPat);
            if (EmailmatchArray == null)
            {
                alert("Your Email Address Seems Incorrect. Please Try Again.");
                return false;
            }
            if(FirstName!== "" && LastName!=="" && Username!=="" && Email!=="" && Password!=="")
            {
                return true;
            }
        }
</script>
      <form action="Registration" method="get">
FirstName   :     <input type="text"     id="FN"       name="FN"><br>
LastName    :     <input type="text"     id="LN"       name="LN"><br>
UserName    :     <input type="text"     id="userName" name="userName"><br>
Password    :     <input type="password" id="passWord" name="passWord"><br>
Email       :     <input type="text"     id="emailId"  name="emailId"><br>
<input type="Submit" onclick="validate()">

Python 代码:

            class Registration(View):
           def get(self, request,msg):
            user_name = request.GET['userName']
            Firstname = request.GET['FN']
            Lastname = request.GET['LN']
            pass_word = request.GET['passWord']
            email_id = request.GET['emailId']
            db_results = usersCollection.find({"userName": user_name})
            print db_results
            print db_results.count()
            print user_name
            print dumps(db_results)
            if db_results.count() == 0:
                    token = binascii.b2a_hex(os.urandom(25))
                    #encrypting password...
                    encrypted_password = pwd_context.encrypt(pass_word)
                    database_key = usersCollection.insert(
                        {"Firstname":Firstname, "Lastname":Lastname, "userName": user_name, "passWord": encrypted_password, "emailId": email_id, "token": token,
                         "status": 0, "isSuperUser": "No", "forgotPasswordToken": '',
                         "createdOn": datetime.datetime.now()})
            if database_key != '':
                    return_output = {'message': 'Signup completed successfully! ', 'status': 'success'}
                    return HttpResponse(dumps(return_output))

嗨, friend 们,我想使用 javascript 验证输入,如果所有字段都正确,那么我想将它们存储在数据库中,我已经编写了代码来执行此操作,但是当我提交没有输入的表单时,我只收到一条警报消息然后关闭警报后,我收到一条用 python 代码编写的消息,空输入存储在数据库中,请帮助我哪里做错了......

最佳答案

基本上发生的情况是,无论函数的返回值如何,您的表单都会被提交。

因此,不要在单击时调用 validate() 函数,而是调用 onsubmit。像这样 -

<form action="Registration" method="get" onsubmit="return validate();">

并删除 onclick 事件。 当 validate() 返回 false 时,将不会发送表单。

关于javascript - 如何使用js验证输入并将输入存储在数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21525437/

相关文章:

javascript - 将 setTimeout() 包装器实现为 Element.prototype 中的方法

python - 如何在 wordpress 博客中编写 python 代码?

python - Django 日志记录 : logger doesnt write to file

python - 值错误: Related model 'referrals.Referral' cannot be resolved

javascript - Heroku 创建命令产生 "ENOENT"错误

javascript - 为什么将函数参数传递给 React.useState 并且返回函数将返回过时的值

javascript - 如何创建可调用的函数数组?

python - 从 csv 数据框中选择一列

python - Numpy:将矩阵与 3d 张量相乘——建议

javascript - 随机放置的盒子