とrazor
ビューエンジンを使用しています。私もYahoo User Interface 2 (YUI2)
simple editorを使用しています。ビューモデルからYUIシンプルエディタで更新されたコンテンツを取得する方法
私のビューのビューモデルはProductEditViewModel
です。私は、この入力フィールドからYUI2シンプルなエディタを作成することになり、私の見解では
public string LongDescription { get; set; }
:このビューモデルでは、私はとして定義されたプロパティを持っています。私はlongDescription変数の内容を表示すると、それからの値が含まれている必要があり
[Authorize]
[HttpPost]
[ValidateInput(false)]
public ActionResult Edit(ProductEditViewModel viewModel)
{
if (!ModelState.IsValid)
{
// Check if valid
}
// I added this as a test to see what is returned
string longDescription = viewModel.LongDescription;
// Mapping
Product product = new Product();
product.InjectFrom(viewModel);
// Update product in database
productService.Update(product);
return RedirectToRoute(Url.AdministrationProductIndex());
}
:ここ
<td>@Html.TextAreaFor(x => x.LongDescription, new { cols = "75", rows = "10" })<br>
@Html.ValidationMessageFor(x => x.LongDescription)
</td>
私の編集アクションメソッドの部分図である。フィールドは、等がビューで定義されています編集者。エディターで内容を編集すると、longDescriptionには元の内容のみが含まれ、更新された内容は含まれません。どうしてこれなの?
アクションメソッドでLongDescriptionの内容を変更したくありません。私は、それをビューモデルから取得し、データベースに直接書きたいと思っています。 –
@BrendanVogt、次に 'viewModel.LongDescription'を使用すると、POSTされた値を取得できるはずです。このアクションを呼び出すときにFireBugでどの値が送信されているかを確認してください。 –
ビューモデルへのテキストの更新を妨げているYUIであるかどうかはわかりませんが、フォームを投稿すると、更新された値がビューモデルに表示されませんでした。リッチテキストエディタ用のjQueryプラグインを試してみましたが、これは完全に機能します。 –