Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何使用asp.net Mvc将文本值发送到我的控制器_Jquery_Ajax_Asp.net Mvc - Fatal编程技术网

Jquery 如何使用asp.net Mvc将文本值发送到我的控制器

Jquery 如何使用asp.net Mvc将文本值发送到我的控制器,jquery,ajax,asp.net-mvc,Jquery,Ajax,Asp.net Mvc,我是asp MVC新手,因此我将尝试使用ajax创建登录表单,因此我编写jsonresult来检查控制器中的用户名和密码,并在ajax中调用它,但当我在日志消息登录字段(这是我的控制器代码)中写入正确的用户名和密码时,它不起作用 public ActionResult login() { return View(); } [HttpPost] public JsonResult ValidateUser(string username,string password) {

我是asp MVC新手,因此我将尝试使用ajax创建登录表单,因此我编写jsonresult来检查控制器中的用户名和密码,并在ajax中调用它,但当我在日志消息登录字段(这是我的控制器代码)中写入正确的用户名和密码时,它不起作用

public ActionResult login()
{
    return View();
}


[HttpPost]

public JsonResult ValidateUser(string username,string password)
{
    using(var contxt=new EnglisCenterEntities())
    {
        var data = from a in contxt.Employee
                   where a.Username == username && a.Passwords == password
                   select a;
        if(data.Count()>0)
        {
            return Json(new { Success = true }, JsonRequestBehavior.AllowGet);
        }
        else
        {
            return Json(new { Success = false }, JsonRequestBehavior.AllowGet);
        }
    }
}
这是我的视图和ajax代码

<div class="container">
  <div class="row">
<div class="col-md-6 col-md-offset-3 alert alert-warning">
    <h2 class="text-center">Login</h2>
    <div class="row">
        <div class="col-md-12">
            <div class="form-group" id="log">
                <div class="input-group">
                    <span class="input-group-addon"><i class="glyphicon glyphicon-user"></i></span>
                    <input type="text" id="username" class="form-control" placeholder="Username">
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <div class="col-md-12">
            <div class="form-group">
                <div class="input-group">
                    <span class="input-group-addon"><i class="glyphicon glyphicon-lock"></i></span>
                    <input type="password" class="form-control" id="password" placeholder="Password">
                </div>
            </div>
        </div>
    </div>
    <div class="row">
        <div class="col-md-12">
            <div class="form-group">
                <button class="btn btn-warning form-control" type="submit" id="savedata"><i class="glyphicon glyphicon-log-in"></i>&nbsp;Login</button>
            </div>

        </div>
    </div>
</div>

登录
登录


$(文档).ready(函数(){
$('#log')。提交(函数(e){
e、 预防默认值();
风险值数据={
用户名:函数(){return$(“#username”).val()},
密码:函数(){return$(“#password”).val()}
};
$.ajax({
url:“/Account/ValidateUser”,
类型:“Post”,
数据:数据,
数据类型:“json”,
成功:功能(响应){
if(response.Success){
$.get(“@Url.Action(“Index”,“Home”)”),函数(数据){
$('.container').html(数据);
});
}
其他的
window.location.href=“@Url.Action(“登录”、“帐户”)”;
},
错误:函数(){
log('Login Fail!!!');
}
});
});
});
那么为什么ajax代码不签入用户名和密码呢

  event.preventDefault(); on your submit button click 

$('#some-form').submit(function(e) {
  e.preventDefault();   

//Rest of your code here  
}
你应该使用

  event.preventDefault(); on your submit button click 

$('#some-form').submit(function(e) {
  e.preventDefault();   

//Rest of your code here  
}

我可以在您的代码中看到2个错误:

var data = {
    username: function() { return $("#username").val(); },
    password: function() { return $("#password").val(); }
};
这将帮助您获得输入的实际值

不要严格限制你的物体,只要通过它:

$.ajax({
    //...
    data: data,
    //...    
});

我可以在您的代码中看到2个错误:

var data = {
    username: function() { return $("#username").val(); },
    password: function() { return $("#password").val(); }
};
这将帮助您获得输入的实际值

不要严格限制你的物体,只要通过它:

$.ajax({
    //...
    data: data,
    //...    
});

若要将模型值传递给控制器,则意味着您可以将值赋给变量并发布该变量。但在这里,在控制器中有两个参数值。因此,您可以像这样传递两个参数,并将按钮类型更改为button:

 <script>
           $(document).ready(function () {
               $('#savedata').click(function () {
                   $.ajax({
                       url: "/Account/ValidateUser",
                       type: "Post",
                       data:{"username": $("#username").val(),
                       "password": $("#password").val()
                   };,
                       dataType: "json",
                       contentType: "application/json",
                       success: function (response) {
                           if (response.Success) {
                               $.get("@Url.Action("Index", "Home")", function (data) {
                                   $('.container').html(data);
                               });

                           }
                           else
                               window.location.href = "@Url.Action("Login", "Account")";
                       },
                       error: function () {
                           console.log('Login Fail!!!');
                       }
                   });
               });
           });
 </script>

$(文档).ready(函数(){
$(“#保存数据”)。单击(函数(){
$.ajax({
url:“/Account/ValidateUser”,
类型:“Post”,
数据:{“用户名”:$(“#用户名”).val(),
“密码”:$(“#密码”).val()
};,
数据类型:“json”,
contentType:“应用程序/json”,
成功:功能(响应){
if(response.Success){
$.get(“@Url.Action(“Index”,“Home”)”),函数(数据){
$('.container').html(数据);
});
}
其他的
window.location.href=“@Url.Action(“登录”、“帐户”)”;
},
错误:函数(){
log('Login Fail!!!');
}
});
});
});

如果您想将模型值传递给控制器,则意味着您可以将值分配给变量,然后发布该变量。但在这里,在控制器中有两个参数值。因此,您可以像这样传递两个参数,并将按钮类型更改为button:

 <script>
           $(document).ready(function () {
               $('#savedata').click(function () {
                   $.ajax({
                       url: "/Account/ValidateUser",
                       type: "Post",
                       data:{"username": $("#username").val(),
                       "password": $("#password").val()
                   };,
                       dataType: "json",
                       contentType: "application/json",
                       success: function (response) {
                           if (response.Success) {
                               $.get("@Url.Action("Index", "Home")", function (data) {
                                   $('.container').html(data);
                               });

                           }
                           else
                               window.location.href = "@Url.Action("Login", "Account")";
                       },
                       error: function () {
                           console.log('Login Fail!!!');
                       }
                   });
               });
           });
 </script>

$(文档).ready(函数(){
$(“#保存数据”)。单击(函数(){
$.ajax({
url:“/Account/ValidateUser”,
类型:“Post”,
数据:{“用户名”:$(“#用户名”).val(),
“密码”:$(“#密码”).val()
};,
数据类型:“json”,
contentType:“应用程序/json”,
成功:功能(响应){
if(response.Success){
$.get(“@Url.Action(“Index”,“Home”)”),函数(数据){
$('.container').html(数据);
});
}
其他的
window.location.href=“@Url.Action(“登录”、“帐户”)”;
},
错误:函数(){
log('Login Fail!!!');
}
});
});
});

伙计们,谢谢你们的回答和你们带来的帮助,这是我的代码

 <script>
   $(document).ready(function () {

               $('#savedata').click(function (e) {
                           e.preventDefault();
                           var data = {
                               username: function () { return $("#username").val(); },
                               password: function () { return $("#password").val(); }
                           };
                           $.ajax({
                               url: "/Account/validateuser",
                               type: "POST",
                               data: data,
                               dataType: "json",

                               success: function (response) {
                                   if (response.Success) {
                                       $.get("@Url.Action("Index", "Home")", function (data) {
                                           $('.container').html(data);
                                       });

                                   }
                                   else
                                       window.location.href = "@Url.Action("Login", "Account")";
                               },
                               error: function () {
                                   console.log('Login Fail!!!');
                               }
                           });
                       });
                   });

$(文档).ready(函数(){
$(“#保存数据”)。单击(函数(e){
e、 预防默认值();
风险值数据={
用户名:函数(){return$(“#username”).val()},
密码:函数(){return$(“#password”).val()}
};
$.ajax({
url:“/Account/validateuser”,
类型:“POST”,
数据:数据,
数据类型:“json”,