无法将数据从视图发送到控制器
问题描述:
你能帮助解决这个问题吗? 我想将我的数据传递给控制器。下面你可以看到我的ajax代码。无法将数据从视图发送到控制器
<script type="text/javascript">
$(document).on("click", "#login_button", function() {
var userName = document.getElementById("userName").value;
var password = document.getElementById("password").value;
if (userName !== "" && password !== "") {
$.ajax({
url: '/Home/Login',
type: 'POST',
contentType: 'application/json; charset=utf-8',
data: {
'userName' : userName,
'password' : password
},
datatype: 'json',
success: function (data) {
}
})
}
else {
alert("Lütfen Alanları Doldurunuz.")
}
})
</script>
我的控制器就像是,
[HttpPost]
public ActionResult Login(string userName, string password)
{
return View();
}
我检查我的数据,它不是空或空。我该如何解决它?
现在我得到这个错误=
jquery.min.js:4 POST http://localhost:59277/Home/Login 500 (Internal Server Error)
非常感谢。
答
今天在编程比赛中我遇到了同样的问题。 我用发送一个GET请求以不同的方式解决了什么吧:
$.get("URL/to/send/request/to", function(data, status){
alert("Data: " + data + "\nStatus: " + status);//data is the actual response you get, while status is weather the request was successful
});
});
希望它为你工作了。
答
我THIK你应该使用
url: 'http://stackoverflow.com/Home/Login',
,而不是
Home/Login
+0
它仍然无法正常工作 –
答
我解决我的问题改变了Ajax的类型是“GET”,并改变我的控制器“HTTPGET”但是当我做这对于“POST”它没有解决。任何人都可以解释给我吗?
答
$.ajax({
url: 'http://stackoverflow.com/Home/Login',
type: "POST",
dataType: 'json',
data: dataToPost,
contentType: "application/json; charset=utf-8",
success: function (data) {
alert("hi" + data);
}
});
我认为这是工作
您的代码发送POST请求和它的只允许HTTPGET这样改就JavaScript或C#的一面,既会工作。 – Adrian
你的AJAX使用POST,你的服务器允许GET。两者都需要使用相同的HTTP动词类型。 – Kyle
我做HttpGet HttpPost和我把调试器到我的控制器,我仍然无法获得数据 –