c# - MVC C# AJAX Post 路由问题
问题描述
我来自 ASP Classic 背景,是 MVC 面向对象编程的新手,尤其是他们的重新路由配置。我确实了解模型视图控制器的概念。
我有以下问题:
当我的观点在Password.chtml
并PasswordDet.chtml
从
button [New] will be http://localhost:50218/Password/PasswordDet
或者
button [Edit] will be http://localhost:50218/Password/PasswordDet/123
AJAX 回发触发回传的 URL 语法PasswordController/PasswordDet
有所不同,这取决于您是来自[New]
还是[Edit]
为了回发工作。
我的理解是,现在我在 PasswordDet.chtml。触发PasswordController/PasswordDet/
不应该 var url = 'PasswordDet/' + $("#btnSubmit").val()
吗?或者请分享什么是正确的方法。请帮忙谢谢。
以下是我的问题的说明。
从Password.chtml
到PasswordDet.chtml
我有:
新的
window.location.href = '@Url.Action("PasswordDet", "Password")';
编辑
"render": function (data, type, full, meta) {
return '<a href="/Password/PasswordDet/' + full.AutoINC + '"><img src="../../Content/myPics/edit-2-24.png" ></a>';
}
但为了让它工作。在PasswordDet.html
AJAX 回传
从New
我需要放在PasswordDet/
前面:
var url = 'PasswordDet/' + $("#btnSubmit").val()
而且Edit
我不需要:
var url = $("#btnSubmit").val()
他们两个不应该一样吗
PasswordDet.chtml 中的 AjaxCode
var url = 'PasswordDet/' + $("#btnSubmit").val()
var formData = $('#formPassDet').serialize();
$.ajax({
url: url,
type: "POST",
data: formData,
dataType: "json",
success: function (response) {
if (response.status == "saved") {
*****Here i don't need to put '.../" ******************
window.location.href = 'Password';
} else if (response.status == "updated") {
*****Here i have to put************************
window.location.href = '../Password/';
});
密码控制器
[HttpPost]
public ActionResult PasswordDet(string id, ForgotPasswordModel viewModel)
{
some code
}
RouteConfig 不知道怎么用
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Login", id = UrlParameter.Optional }
);
解决方案
实际上不清楚你需要什么。如果你是 MVC 的初学者,请通过链接https://www.youtube.com/watch?v=bCNyL4LfWSw
推荐阅读
- vue.js - 在 Axios Post action vueJs 之后我无法集成 Sweet Alert
- javascript - WebGL 三角形未正确渲染
- kubernetes - 与 HELM 共享依赖项
- php - php 将输入“名称”设置为 php echo 变量
- jmeter - Jmeter将响应与提供的文件进行比较
- mysql - 不同维度的sql多个最大值
- asp.net - ASP.NET 在发布后给出错误 403,但在开发期间没有
- swift - 如何在异步线程中保持永无止境的进程
- php - 在特定时间范围内显示数据库实体
- amazon-web-services - amazon emr - 创建集群是否使用数据传出?