ajax 使用处理程序请求 razor 页面
ajax request to razor page using handler
我正在尝试使用 ajax 调用从 Active.cshtml.cs 文件中获取数据。
这是 jquery 代码:
var turl = '/Active?handler=Clients/' + id;
$.ajax({
type: "GET",
url: turl,
dataType: "json",
success: function (result) {
alert(JSON.stringify(result));
});
这里是Active.cshtml.cs方法
public JsonResult OnGetClients()
{
return new JsonResult("new result");
}
状态为 200 Ok,但它显示了整个网页作为响应。理想情况下,它应该 return "new result" 在开发人员工具的网络选项卡中。是我在 Pages 中有 Active.cshtml 和 Active.cshtml.cs 造成混淆吗?我该如何解决?
谢谢
对于剃刀页面,您应该在查询字符串中为您的处理程序方法传递参数值。
这应该有效。
yourSiteBaseUrl/Index?handler=Clients&53
假设您的 OnGetClients 有一个 id
参数。
public JsonResult OnGetClients(int id)
{
return new JsonResult("new result:"+id);
}
所以你的 ajax 代码应该看起来像这样
var id = 53;
var turl = '/Index?handler=Clients&id=' + id;
$.ajax({
type: "GET",
url: turl,
success: function (result) {
console.log(result);
}
});
我正在尝试使用 ajax 调用从 Active.cshtml.cs 文件中获取数据。 这是 jquery 代码:
var turl = '/Active?handler=Clients/' + id;
$.ajax({
type: "GET",
url: turl,
dataType: "json",
success: function (result) {
alert(JSON.stringify(result));
});
这里是Active.cshtml.cs方法
public JsonResult OnGetClients()
{
return new JsonResult("new result");
}
状态为 200 Ok,但它显示了整个网页作为响应。理想情况下,它应该 return "new result" 在开发人员工具的网络选项卡中。是我在 Pages 中有 Active.cshtml 和 Active.cshtml.cs 造成混淆吗?我该如何解决? 谢谢
对于剃刀页面,您应该在查询字符串中为您的处理程序方法传递参数值。
这应该有效。
yourSiteBaseUrl/Index?handler=Clients&53
假设您的 OnGetClients 有一个 id
参数。
public JsonResult OnGetClients(int id)
{
return new JsonResult("new result:"+id);
}
所以你的 ajax 代码应该看起来像这样
var id = 53;
var turl = '/Index?handler=Clients&id=' + id;
$.ajax({
type: "GET",
url: turl,
success: function (result) {
console.log(result);
}
});