ASP.NET MVC 2.0 を使用しています。
「その場で」新しいフォームテーブル行を追加するには、動的フォームを実装する必要があります。
私のViewModelには、フォームに追加される各行に応じたICollectionが含まれています。
そのメカニズムを使用してクライアント側の検証を行うにはどうすればよいですか?
ASP.NET MVC 2.0 を使用しています。
「その場で」新しいフォームテーブル行を追加するには、動的フォームを実装する必要があります。
私のViewModelには、フォームに追加される各行に応じたICollectionが含まれています。
そのメカニズムを使用してクライアント側の検証を行うにはどうすればよいですか?
モデルをリストにバインドする必要があります。
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspxをご覧ください。(Phil Haack は Microsoft MVC 関係者の 1 人です)。これは基本的に、Microsoft の担当者が機能を可能にするために作成したハックです (Phill は、これを行う別の方法を設計していると主張していますが、今のところ、これが私たちの方法です)。これに検証コントロールを簡単に追加できます。命名スキームを実装するときは、非常に注意深く見てください。また、非表示の「インデックス」フィールドを入れることを忘れないでください。index の値は好きなように指定できます (シーケンス内の数字である必要はありません) が、非表示フィールドに値として入力するものはすべて、Phill's のように、後続の入力コントロールの角括弧内にある必要があります。例。再確認してください。何かを見逃すのは非常に簡単なので、隠しインデックスを入れるのを忘れたために、私はかつて純粋な惨めさのポイントに来ました. また、命名スキームの 2 番目の部分 ('Name' および '
それが完了したら、jQuery を使用して、フォーム上のアイテムを動的に追加/削除します。jQueryセレクターではidに角括弧を使用できないため、入力コントロールの「id」属性を別の方法(つまり、「something_index_propertyName」)で構築できますが、命名スキームに従って「値」属性を保持することに注意してください。
ハッピーコーディング。