Jquery到MVC的方法
本文关键字:方法 MVC Jquery | 更新日期: 2023-09-27 18:14:07
我想使用jQuery和mvc-actionmethod删除一个db条目。但是我似乎不能让deletemethode工作…
Index.cshtml
<代码控制器/strong>
// DELETE: api/Categories/5
[ResponseType(typeof(Category))]
public IHttpActionResult DeleteCategory(int id)
{
Category category = db.Categories.Find(id);
if (category == null)
{
return NotFound();
}
db.Categories.Remove(category);
db.SaveChanges();
return Ok(category);
}
让我们开始吧。我假设您使用的是ApiController
。
如果你使用一个名为Categories的控制器,那么最好使用方法的名称作为它所代表的动词。如果你想发送一个DELETE: api/categories/id
,那么你应该有你的方法:
[ResponseType(typeof(Category))]
public IHttpActionResult Delete(int id)
{
Category category = db.Categories.Find(id);
if (category == null)
{
return NotFound();
}
db.Categories.Remove(category);
db.SaveChanges();
return Ok(category);
}
如果你真的想叫它DeleteCategory,那么你应该说明它代表什么http verb
:
[HttpDelete]
[ResponseType(typeof(Category))]
public IHttpActionResult DeleteCategory(int id)
{
Category category = db.Categories.Find(id);
if (category == null)
{
return NotFound();
}
db.Categories.Remove(category);
db.SaveChanges();
return Ok(category);
}
但是它不工作的主要原因是因为您的function
除了调用alert
之外没有做任何事情
function DeleteCategory(item)
{
alert(item);
}
ps:当你正在使用javascript时,不要在下一行使用大括号。javascript的自动分号插入可能会导致问题。总是做:
function DeleteCategory(item) {
alert(item);
}
我真的很感谢你所有的评论。正如你所看到的,我对stackflow和编程非常陌生!
我试过警报只是为了确保我的功能是工作的,包括项目。
困难的部分是我如何调用我的delete方法,并为此删除特定的项目…