【发布时间】:2016-07-19 05:45:28
【问题描述】:
我在我的控制器中使用路由,因为下面的代码是我的问题 ajax 调用未重定向到控制器操作方法 控制器:自定义操作:联系我们
[Route("{id?}/{page?}/{BlogPageId?}")]
[HttpGet]
public ActionResult Index(string id,string page,string BlogPageId)
{
//some code
}
这很好,但另一个操作不起作用
[HttpPost]
public JsonResult ContactUs(Contact_Us objContact)
{
}
Ajax 调用
$(document).on('click', "#submitCon", function () {
var Data = {};
Data.Full_Name = $("#Full_Name").val();
Data.Email_id = $("#Email_id").val();
Data.MobileNumber = $("#MobileNumber").val();
Data.Company_Name = $("#Company_Name").val();
Data.Subject = $("#Subject").val();
Data.Message = $("#Message").val();
console.log(Data);
if ((Data.Full_Name == '') || (Data.Email_id == '') || (Data.MobileNumber == '') || (Data.Company_Name == '') || (Data.Subject == '') || (Data.Message == '')) {
alert("All the fields are mandatory.");
return false;
}
else {
$.post('/Custom/ContactUs', { objContact: Data }, function (data) {
swal(data[0]);
$("#Full_Name, #Email_id, #MobileNumber, #Subject,#Message").val('');
});
return false;
}
})
【问题讨论】:
-
您想重定向到 ContactUs?你的解释有点难理解
-
只是
$.post('/Custom/ContactUs', Data, function (data) {(但你应该使用'@Url.Action("ContactUs", "Custom")'而不是硬编码网址) -
我得到了答案
$.post('/ContactUs', { objContact: Data }, function (data) {}和控制器操作[Route("ContactUs/{objContact?}")] [HttpPost] public JsonResult ContactUs(Contact_Us objContact) {}
标签: ajax asp.net-mvc routes