2012-12-21 23 views
26

私は、Razorを使用してテキストボックスを作成し、valueを次のように設定しようとしました。Razor構文の@ Html.TextBoxForに値を設定する方法は?

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", value= "3" }) 

私はそれが間違ってやっている何を空value

<input id="txtPlace" name="Destination" type="text" value 
    class="ui-input-text ui-body-c ui-corner-all ui-shadow-inset ui-mini" > 

とHTML inputタグをレンダリングしていても@

@Html.TextBoxFor(model=> model.Destination, new { id = "txtPlace", @value= "3" }) 

valueを追加しようとしましたか?

+0

が重複する可能性を(http://stackoverflow.com/questions/3034986/how-to -set-a-default-value-with-html-textboxfor) –

答えて

65

問題は、あなたが小文字のVを使用していることである

あなたが値を設定する必要があり、それはあなたの問題を解決する必要があります。

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" }) 
+1

$( '#id')。val( "myvalue")を使用して@ Html.TextBoxForの値を設定する方法。 – ManirajSS

8

仕様によるものですmodel.Destination

あなたのプロパティの値を書き込むことが起こっています。ビューを返す前に、Destinationプロパティにコントローラ内の値を設定したいと思うでしょう。

+0

必ずしもそうとは限りません。ルートオブジェクトにDestinationパラメータが含まれている場合、MVCはこれをモデルのDestinationプロパティより優先して使用します。 http://stackoverflow.com/questions/7251241/textboxfor-showing-wrong-value/7251446 –

11

valueValueに置き換えてみました。 valueinputタグに設定しました。

@Html.TextBoxFor(model => model.Destination, new { id = "txtPlace", Value= "3" }) 
+3

それは動作しますが、私はもっときちんとした方法は、コントローラのあなたのモデルのDestinationプロパティを初期化することだと思います。 – Romias

+2

あなたは答えとしてgazの答えをマークする必要があります。あなたのものではありません。 – Sakthivel

6

私はValuevalueを交換してみましたそれがうまくいった。 valueinputタグに設定しました。

4

これはMVC5で、私の作品:[?Html.TextBoxForでデフォルト値を設定する方法]の

@Html.TextBoxFor(m => m.Name, new { @class = "form-control", id = "theID" , @Value="test" }) 
関連する問題