Вот JS:
$('#createReview').click(function () {
CKEDITOR.instances['ReviewText'].updateElement();
$.ajax({
type: 'POST',
cache: false,
url: '/Review/Create',
data: $('#reviewForm').serialize(),
dataType: 'html',
success: function (response) {
$('#bookReview').html(response);
}
});
return false;
});
'createReview' равно
Действие:
[HttpPost, ExportModelState]
public ActionResult Create(Review review)
{
if (ModelState.IsValid)
{
if (review.Create())
return PartialView("EditReview", review);
}
return RedirectToAction("Edit");
}
Когда форма опубликованаобзор создается, но связывается только свойство строки - в данном случае ReviewText.Ни одно из целочисленных свойств не является обязательным для всех.
Самым странным является то, что, когда я запускаю его в режиме отладки, нет свойств, успешно связывающихся, даже даже ReviewText.Когда я проверяю объект Review, все равно null или по умолчанию.
Я переключался между обычным режимом и отладкой, и он каждый раз делал одно и то же.
Я нахожусь напотеря.
Редактировать:
Вот полный вывод вызова Serialize (), который не помещается в комментарии:
оценка= 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & оценка = 0 & Book.Review.Rating = 0 & Рейтинг = 0 & ReviewID = 0 & ParentBookID = 1 & reviewText =% 3CP% 3E% 0A% 09I% 26% 2339% 3БМ + ап +идиотом% 3C% 2FP% 3E% 0A% 3Cbr +% 2F% 3E% 0A% 3Cdiv + firebugversion% 3D% 221.5.4% 22 +% 3D ID% 22_firebugConsole% 22 +% 3D стиль% 22display% 3A + 3B% ни%22% 3E% 0A% 09% 26nbsp% 3B% 3C% 2Fdiv% 3E% 0A% 3Cbr +% 2F% 3E% 0A & DateCreated = 1% 2F1% 2F0001 + 12% 3A00% 3A00 + AM
Обратите внимание, что "Score "нигде не найти во всей моей базе данных, и все это барахло о Firebug смешано там.
Edit # 2:
ОК, так что все"Оценка "поступает от плагина jQuery Raty, который был быстро отключен-ed.
Firebug собирает текст, поступающий из экземпляра CKEditor, который даже не обновляется до отправки формы.
Этот материал на стороне клиента, безусловно, взрыв!
Гррр ...