Request.IsAjaxRequest devolve falso
Eu tenho um projeto MVC em que tenho um formulário com um botão de envio. Eu adicionei um manipulador do lado do cliente jquery que intercepta o evento de envio de formulário. A função javascript chama a mesma ação do MVC que seria chamada sem o javascript.
$("form[action ='/List/CreateItem']").submit(
function() {
$.post($(this).attr("action"), $(this).serialize(), function(response) { $("#results").html(response); });
return false;
}
);
Na ação MVC que é chamada, eu testei para Request.IsAjaxRequest para decidir se deve retornar uma exibição ou um resultado JSON. Meu problema é que Request.IsAjaxRequest está retornando false, mesmo sabendo que a chamada está sendo feita a partir da função jquery. (Eu sei disso porque se eu comentar a linha $ .post na função jquery e apenas deixar a linha falsa de retorno, nada acontece. Se eu não comentar a linha, a ação é executada - mas retorna a visão porque IsAjaxRequest é falso.)
Essa linha deve fazer com que Request.IsAjaxRequest seja verdadeiro?