Jquery 无法从控制器返回数据以在AJAX中查看
我正在通过Jquery 无法从控制器返回数据以在AJAX中查看,jquery,ajax,asp.net-mvc,Jquery,Ajax,Asp.net Mvc,我正在通过AJAX将内容从视图发送到控制器。它似乎工作得很好,因为它点击了操作方法并正确执行。但是,我无法在视图中获取从操作返回的数据 它缺少什么吗 注意:我确实尝试过调试代码,但是一旦代码通过action方法,它就不会返回函数 遵循AJAX代码: 我已经在控制台上检查了网络,它表明我正在接收数据。line console.log(数据)不包含所需的数据 可能的问题-看过很多这样的问题后,我看到了类似将URL更改为/Home/Action的回答。这实际上是一个问题还是无关紧要?我希望下面的代码
AJAX
将内容从视图
发送到控制器
。它似乎工作得很好,因为它点击了操作方法
并正确执行。但是,我无法在视图
中获取从操作
返回的数据
它缺少什么吗
注意:我确实尝试过调试代码,但是一旦代码通过action方法,它就不会返回函数
遵循AJAX代码:
我已经在控制台上检查了网络,它表明我正在接收数据。line console.log(数据)不包含所需的数据
可能的问题-看过很多这样的问题后,我看到了类似将URL更改为
/Home/Action
的回答。这实际上是一个问题还是无关紧要?我希望下面的代码对您有用
AJAX代码:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
console.log(data)
$('#Content').html(data);
});
};
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Content(cust2, "text/html");
}
}
和控制器代码:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
console.log(data)
$('#Content').html(data);
});
};
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Content(cust2, "text/html");
}
}
我希望下面的代码适用于您 AJAX代码:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
console.log(data)
$('#Content').html(data);
});
};
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Content(cust2, "text/html");
}
}
和控制器代码:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
console.log(data)
$('#Content').html(data);
});
};
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Content(cust2, "text/html");
}
}
尝试使用
Json()
方法返回数据:
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Json(new { result = cust2 }, JsonRequestBehavior.AllowGet);
}
}
在你看来:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
if(data.result != undefined){
$('#Content').html(data.result);
}
});
};
尝试使用
Json()
方法返回数据:
[HttpPost]
public ActionResult Action(int code)
{
using (SERVFL_DMSEntities db = new SERVFL_DMSEntities())
{
var cust1 = db.HomePageCustomizations.Where(r => r.IsPublic == true && r.ContentType == code).OrderByDescending(r => r.ID).FirstOrDefault();
string cust2 = cust1.Content;
return Json(new { result = cust2 }, JsonRequestBehavior.AllowGet);
}
}
在你看来:
function CategoryChanged() {
var value = $("#ContentType").val();
$.ajax({
cache: false,
url: '@Url.Action("Action", "Home")',
type: "POST",
data: { code: value }
}).done(function (data) {
if(data.result != undefined){
$('#Content').html(data.result);
}
});
};
你能调试JS代码以查看
数据
实际包含的内容吗?在“完成”函数中:为什么你要设置var response
,然后设置vdata
,然后再次使用response
?@TimBiegeleisen在调试过程中,一旦操作方法完成,JS代码就不会被命中。@Finn我犯了错误,您是否在控制台的“网络”选项卡中看到请求?你看到了什么?你能调试JS代码以查看数据
实际包含的内容吗?在done函数中:为什么要设置var response
,然后设置vdata
,然后再次使用response
,一旦操作方法完成,JS代码就不会被命中。@Finn我犯了一个错误,将对其进行更改。您在控制台的“网络”选项卡中看到请求了吗?你看到了什么?