cod*_*fun 6 ajax asp.net-mvc actionlink http-delete
我正在尝试做的事情:尝试使用"正确的"HTTP删除删除记录.
控制器代码:
[HttpDelete]
public void DeleteRun(int RunId)
{
repository.RemoveEntry(RunId);
}
Run Code Online (Sandbox Code Playgroud)
剃刀查看:
@Ajax.ActionLink("Delete","DeleteRun",new {RunId = run.RunId},
new AjaxOptions() { Confirm = "Are you sure you want to delete this entry?",
HttpMethod = "DELETE",
OnComplete = string.Format("DeleteRunInTable({0})",run.RunId)
})
Run Code Online (Sandbox Code Playgroud)
Javascript(在单独的包含文件中):
function DeleteRunInTable(RunId) {
$("tr[data-runid=" + RunId).remove();
}
Run Code Online (Sandbox Code Playgroud)
链接actionlink方法正在创建:
<a data-ajax="true" data-ajax-complete="DeleteRunInTable(11)" data-ajax-confirm="Are you sure you want to delete this entry?" data-ajax-method="DELETE" href="/Runs/Delete/11">Delete</a>
Run Code Online (Sandbox Code Playgroud)
不确定javascript部分是否有效但不担心它.试着一次迈出一步:).现在它只是像传统标签一样工作,当我点击链接时它只是做一个href的GET请求.当然我得到了404错误,因为我把[HTTPDelete]放在我的控制器上.我对Web开发很陌生,所以我确定在javascript或jquery中还有其他方法可以做同样的事情,但我只是在做我现在知道的事情.
这应该像我最近自己做的那样工作,而我所要做的就是HttpMethod
在AjaxOptions
论证中指明.
您还需要确保页面上包含jquery.unobtrusive-ajax.js脚本.
归档时间: |
|
查看次数: |
4059 次 |
最近记录: |