我想通过AJAX传递一些参数来调用MVC控制器操作。
我在这个应用程序中有时做了这个,它工作正常。
我不知道为什么只有这一个不起作用。
Ajax调用MVC控制器返回“未找到”
function excluirDetalhe(button, tab) {
var index = $(button).closest('tr').index();
var myTable = document.getElementById(tab);
var id = myTable.rows[index].cells[0].innerHTML.trim();
$('#' + tab + ' tr:eq(' + index + ')').remove();
$.ajax({
traditional: true,
url: "entidades/gravaCookie",
type: 'post',
data: { id: id, detalhe: "E" },
error: function (jqXHR, textStatus, errorThrown) {
alert(errorThrown);
}
});
}
这是我的控制器方法:
public void gravaCookie(string id, string detalhe)
{
string key = "een_id";
if (detalhe.Equals("E"))
key = "een_id";
if (detalhe.Equals("C"))
key = "eco_id";
if (detalhe.Equals("B"))
key = "eba_id";
cookie.Values.Add(key, id);
}
只是一个提醒,我做正是我在做其他的Ajax调用,但只有这一个尤其是行不通的。
有没有人有任何想法?
您是否有脚本错误?您是否看到404错误讯息? – Shyju
您是否在控制器方法之上有[HttpPost]? – Nate
沿着@Nate所说的话:如果你在gravacookie控制器方法上有[HttpGet],那么你将得到404。 – jnoreiga