簡単に言えば、ユーザーにJSのいくつかのタグを選択させて、コントローラに送信するようにしたいと思います。ここに私の提案は以下のとおりです。JavaScriptメソッドをコントローラメソッドに動的に追加しました。Stackoverflow
- は次のように命名規則を持つすべての挿入タグの隠し入力を作成します。
Tag123
(123 =このタグの一意の識別子)と、選択されたタグを見つけるために私のアクションメソッドでFormCollection
を反復処理します。短所は明白です:ViewModel
の代わりにFormCollection
を使用し、FormCollection
を繰り返して、私の希望するデータを取得するのが悪いようです。 - 隠れた入力を1つ作成し、選択したすべてのタグを追加します。これは、入力の現在の値から適切なIDを見つけて削除する必要があるため、タグの削除で面倒なことがあります。しかしプロは、私は1つの要素しか持たず、コントローラーアクションでそれにアクセスするためにそれをビューモデルに入れることができるということです。
- 誰かがそれをどのようにしているか知っているかどうかを知りたい。彼らは今、基準を守っているのです。彼らがどのようにそれをするのか知りたいです。
ありがとうございます。
1つのタグに2つの入力フィールドがありますか?それをリストとして取得するには? – Kamyar
はい。 MVCのコレクションにバインドするときは、0(ゼロ)から始まり、スキップせずにインクリメントする(例:tags [0] .tagid = 201、tags [2] .tagid = 307など) tags.Index入力はスキップされ、id 307はあなたのリストにバインドされません)、または既存のすべての入力をMVCに知らせるためにtags.Index入力を作成することができます(この意味で、tags.Indexは等しい"apple"に変更しても、問題のない名前付きタグ[apple] .tagidを入力して入力できます。 –
http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspxを確認してください –