javascript - 为什么 Ajax 调用不将操作中的数据返回给成功回调函数?
问题描述
我正在尝试将部分视图 html 附加到模态弹出框的内容。以下脚本应该在单击按钮时运行“详细信息”操作并将 html 输出返回到成功回调。所以 ActionMethod 运行,但我无法将相应的视图作为参数返回 - 警报没有出现!你能发现那个脚本有什么问题吗?我无法恢复视图的原因是什么?
<!--language: lang-js-->
<script>
$(".detail-link").click(function () {
var Did = $(this).data("id");
$.ajax({
type: 'POST',
url: "/Home/Details/",
data: { id: Did },
dataType: 'html',
succes: function myfunction(data){
alert(data);
}
});
});
</script>
这是名为“详细信息”的操作方法
<!--language: lang-cs-->
[HttpPost]
public ActionResult Details(int? id)
{
HomeModel model = new HomeModel();
var book = db.Books.Where(b => b.Id == id).Include(b => b.Author).SingleOrDefault();
if (book == null)
{
HttpNotFound();
}
book.DisplayNumber++;
db.SaveChanges();
model.bookDetails = book;
return PartialView(model);
}
如果需要,我也可能会发布我想要返回的视图
解决方案
将 ActionResult 更改为 JsonResult 并返回 Json 对象。
[HttpPost]
public JsonResult Details(int? id)
{
HomeModel model = new HomeModel();
var book = db.Books.Where(b => b.Id == id).Include(b => b.Author).SingleOrDefault();
if (book == null)
{
HttpNotFound();
}
book.DisplayNumber++;
db.SaveChanges();
model.bookDetails = book;
return Json(model);
}
推荐阅读
- node.js - 使用 VSCode 调试器找不到节点进程
- indexing - CloudKit Dashboard 索引可查询、可排序和可搜索
- mongoose - 在 Mongoose 变量中嵌套数据
- file - 如何从 kentico 的媒体库中获取所有文件?
- r - 如何使用 R 连接到 SocialBakers API
- sql - 在 SQL Server 中获取独占计数
- grails - 从 grails 2.3.4 迁移到 3.3.8 时无法模拟域
- python - Pyplot - 可视化列表的直方图
- sapui5 - 如何从外部获取 sap.m.Select 的 selectedKey?
- python - 计算特定员工的工资总和