我有一个 ASP.NET Core Razor Pages (.NET 8),但我正在努力使用 @Html.ActionLink,因为我不太理解它们。
我有一个视图,通过 foreach 我创建了几个动作链接,它们看起来像这样:
@Html.ActionLink("(Link Name)", "LoadData", "Shared", new { id1= 0, id2=0 }, new { @class = "sbmt" })
(忘了
但是当我打开 Chrome 的元素检查器时,他们的 href 是空的(这是正确的吗?因为我认为他们会喜欢
在我的 Program.cs 中映射控制器和操作的路线,但我不确定为什么要这样做。
替换任何其他 html 控件的 actionlink 并创建一个 Ajax 函数来调用我的控制器函数,但是当我检查 ajax 函数时,url 为空
$(".sbmt").click(function (e) {
e.preventDefault();
var id1 = $(this).data("id1");
var id2 = $(this).data("id2");
$.ajax({
type: "GET",
data: JSON.stringify({ id1: id1, id2: id2 }),
url: '@Url.Action("LoadData", "Shared")',
method: "GET",
dataType: 'json',
contentType: false,
processData: false,
success: function (data) {
$('#partialView').html(data);
}
});
});