当点击另一个表选项时,我将使用由javascript
填充的表。所有这一切都没有问题,当我向表中添加删除按钮时,onClick
事件会触发但是在asp.net中没有调用过。
function DeleteLink(id) {
$.ajax({
url: '/PublicPages/LinkDelete/',
data:{ id:id }
});
}
请告诉我哪里出错了。
我试过了
function DeleteLink(id) {
$.ajax({
url: '/PublicPages/LinkDelete/' + id
}
以及
更新:
[HttpPost]
public async Task<IActionResult> LinkDelete(Guid id)
{
var pageId = _linkDataProvider.FindById(id).PublicPage.Id;
_linkDataProvider.Delete(id);
var page = await _pageDataProvider.FindById(pageId);
var viewModel = _pageDataProvider.ConvertToViewModel(page);
return View("Details", viewModel);
}
UPDATE2
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Flooring}/{action=Index}/{id?}");
});
答案 0 :(得分:2)
您应该在ajax设置中指定http方法。尝试更改您的javascript,如下所示:
function DeleteLink(id) {
$.ajax({
type = 'POST',
url: '/PublicPages/LinkDelete/' + id
});
}
<强>更新强>
如果您更喜欢使用data:{ id:id }
,那么您需要创建一个模型类:
public class DeleteModel
{
public Guid Id{get;set;}
}
[HttpPost]
public async Task<IActionResult> LinkDelete([FromBody]DeleteModel model)
....