2011-11-15 3 views
1

私はこれは私が試したが、うまくいきませんでしたすべてです@HTML.TextAreaFor@ Html.TextAreaForのデフォルトテキストを設定できませんか?

のデフォルトのテキストを設定することはできませんよ、それは常に空のテキスト領域

​​

まったく同じことが@Value@Html.TextBoxForのために働いていることを示しますしかしないTextArea :(

とのあなたにそれを渡す前に、誰もが...

答えて

1

は答えを見つけて、私は愚かな間違い

をしていました

今交換しましたこの

public ActionResult Index(Guid empId) 
    { 
     return View(new EditEmpoyeePopulator(session, empId).GetModel()); 
    } 

するために、この

public ActionResult Index(Guid empId) 
    { 
     ViewBag.Model = new EditEmployeePopulator(session, empId).GetModel(); 
     return View(); 
    } 

から私のIndexメソッドそして、それは働きました!

私はこれを誤った方法で先に行っていました。私はViewBagのプロパティとしてモデルを割り当てていましたが、ViewBagを通じてビューにアクセスしていましたが、それは私の間違いでした。私は私のコードを交換した場合、それはこののみ

@Html.TextAreaFor(m => m.EmployeeDescription) 

で作業を開始し

:) :)すべての返信

3

を助けることができるあなたはモデルにテキストを設定する必要がありますビュー。これは、TextBoxForでも同様です。 HTML属性を使用して値を設定する必要はありません。テキストエリアにはテキストや値の属性はありません。最初に表示されるときの値は開始タグと終了タグの間のHTMLです。

+0

ため

おかげで私の画面は、編集画面であるので、はいモデルが値を持っていますモデルにはすでにすべての値が入っています m.EmployeeDescriptionは使用前に値で埋められていますが、まだ動作していません –

+0

HTML属性を完全に省略するとどうなりますか? – tvanfosson

+0

'@Value'または '@Text'部分を完全に削除した場合はどうですか? 何かこのようなもの @ Html.TextAreaFor(m => m.EmployeeDescription) また、それは動作しません、テキスト領域はまだ空のままです –

0

残念ながらこれはHTML自体のTextArea要素の性質上、ビューソースが表示されている場合は値またはテキストが見つかりますが、HTMLの場合はこれがTextAreaには影響しません。

ので、あなただけの、次のようにデフォルト値を作成するためのオブジェクトを初期化することができますtextareaタグ自体の内部テキストを配置する必要があります。

Employee e = new Employee { Id = 1, EmployeeDescription = "Default Value" }; 
関連する問題