Я делаю пост JQuery AJAX, как это:
var form = $("#formid");
form.submit(function()
{
$.ajax(
{
type: "POST",
url: form.attr("action"), // points to NewClient
data: form.serialize(),
success: function(msg) { alert('ok ' + msg); },
error: function(req, status, err) { alert('err=' + err + ' status=' + status); }
});
return false;
});
На стороне ASP.MVC у меня есть что-то вроде этого:
[AcceptVerbs(HttpVerbs.Post)]
public virtual ActionResult NewClient()
{
// just a test...
return null;
}
Какой правильный тип результата для функции NewClient, чтобы jQuery работал правильно? Как и сейчас, он работает в FF и Chrome, но не работает в IE8 (работает в IE7) - т.е. в IE8 я получаю предупреждение об ошибке ( edit : ошибка произошла из-за вызова «отладчик;») в вызове JS). В любом случае, какой рекомендуемый способ:
- Передача формы в ASP.NET MVC через jQuery (кажется, что $ (). Serialize () работает нормально, это рекомендуемый способ?)
- Со стороны сервера возвращать либо Успех, либо Отказ, и в случае сбоя какое-либо сообщение я мог бы показать клиенту. Как мне сказать jQuery, что метод / вызов не удался или нет?
Спасибо.
EDIT:
HTML выглядит так:
<form id="formid" action="/client/newclient">
... input fields ...
</form>