Jquery 如何使用asp.net Mvc将文本值发送到我的控制器
我是asp MVC新手,因此我将尝试使用ajax创建登录表单,因此我编写jsonresult来检查控制器中的用户名和密码,并在ajax中调用它,但当我在日志消息登录字段(这是我的控制器代码)中写入正确的用户名和密码时,它不起作用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) {
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> 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”,