Jquery val()输出html中的默认输入字段值,而不是用户输入的值

Jquery val()输出html中的默认输入字段值,而不是用户输入的值,jquery,validation,Jquery,Validation,我有个问题。。。我试图获取所有输入字段数据进行验证,但是.val()从html返回默认值,而不是用户输入的值。也许是因为我在domready里面有这个脚本?我想不出来。。。为了在JSFIDLE上做得更好,它是有效的!: $(document).ready(function() { //Login Ajax $("#loginform").submit(function(){ var url = $(this).attr("action"

我有个问题。。。我试图获取所有输入字段数据进行验证,但是.val()从html返回默认值,而不是用户输入的值。也许是因为我在domready里面有这个脚本?我想不出来。。。为了在JSFIDLE上做得更好,它是有效的!:

$(document).ready(function() {


        //Login Ajax
        $("#loginform").submit(function(){
            var url = $(this).attr("action");

            //Get input variables
            var user_name = $("input[name=user_name]");
            var user_password = $("input[name=user_password]");

                        //border control
                        if (user_name.val() == "username" && user_password.val() == "password") {
                            user_name.addClass("error");
                            user_password.addClass("error");
                            return false;
                        } else {
                            user_name.removeClass("error");
                            user_password.removeClass("error");
                        }

                            if (user_name.val() == "username") {
                                user_name.addClass("error");
                                return false;
                            } else {
                                user_name.removeClass("error");
                            }

                        if (user_password.val() == "password") {
                            user_password.addClass("error");
                            return false;
                        } else {
                            user_password.removeClass("error");
                        }

            return false;
        });


        //Registration Ajax
        $("#regsitrationform").submit(function(){
            var url = $(this).attr("action");


            return false;
        });


});

我只是在猜测,但也许你的背景不对

如果页面上有多个同名输入,则必须告诉jQuery应该使用哪个输入

在提交回调中,此引用表单元素。因此,您可能看起来像这样:

var user_name = $("input[name=user_name]", this);
var user_password = $("input[name=user_password]", this);

你能提供一个小提琴链接吗?你也可以做一件事。将默认值放在占位符
中,你也可以发布页面的HTML吗?胡乱猜测,但你完全正确!有两个要素。。。用于以相同名称登录和注册。。。谢谢这帮我节省了几个小时的时间!