2012-02-22 20 views

答えて

23

あなたのコントローラでこれを入れて:

ModelState.Remove("JobIndicator"); 

は、その後、あなたの隠されたフィールドが更新されます。

+1

私はこの答えを愛するが、私は、この動作を憎みます。あまり直感的ではありません。私はPOSTの前にフィールド値をクライアントサイドで変更するか、新しいモデルを作成しているので、まれに表示されないようですが、値を設定すると設定したいと思います。 – LoveMeSomeCode

+2

@ Html.HiddenFor(m => m.Name)の代わりに、を使用して問題を解決するのに役立ちました) – ravithejag

+0

なぜ誰もこれを説明することができます。 – maxspan

-1

だけ

@Html.HiddenFor(model => model.JobIndicator) 
7

問題formタグの内側にこのラインを置くことを確認しますが、あなたがこの問題を解決.TOポストアクションを呼び出すときにを渡すのHTMLヘルパーは、モデルからModelStateからデータを取得していませんあなたがあなたのビューを返す前に、あなたはをポストアクションで呼び出すことができます。このようにして、ModelStateの情報はクリアされ、ビューが再生成されると再生成されます。

あなたはこの問題自分の中に、このblog

0

らんでこの問題(および他のソリューション)についての詳細情報を見つけることができます。解決策(これはエレガントではありませんが)は、このために基本的なHTML構文を使用して、モデルの値を使用することです。

<input type="hidden" name="JobIndicator" value="@Model.JobIndicator">

関連する問題