0

ここで与えられたのと同じ答えを探しています: HTML/CSS

しかし、私はMVC4でこれをやりたいです。

次のビューが得られました。

  @using (Html.BeginForm("Kompetens", "KumaAdmin"))
            {  
                <div class="three columns" style="margin-right: 627px;">
                    <h6>Kompetens</h6>
                    <div style="width:456px;"> @Html.ListBox("kompetensId", (SelectList)ViewBag.KomId)</div><br/>
                    <h6>Lägg till kompetens</h6>
                    <div class="focus">
                    @Html.EditorFor(mm => mm.KompetensTest)
                    </div>
                    <input type="submit" style="margin-right: 205px;" value="Skapa"/><br/><br/>
                </div>
             }

これは私のテキストボックスなので:

@Html.EditorFor(mm => mm.KompetensTest)

上記のリンクのように、「onfocus」および onblur 属性を適用する方法がわかりません。

4

3 に答える 3

1

エディタ テンプレートを作成する必要があります。Html.EditorFor には、「new { onfocus = "js here" }」を実行するための「object htmlattributes」パラメータがないためです。

ビュー>共有、

EditorTemplates というフォルダーを作成します。

次に、@model string/このオブジェクトが何であれを使用してビューを作成します。必要に応じてファイルに名前を付けます。

@model をビューに配置すると、このタイプのみをモデルとして受け入れるように指定されます。

このビュー内で、Html.TextBox (TextBoxFor ではない) を作成すると出来上がりです。

Html.EditorFor メソッドには、使用するエディター テンプレートを設定する方法もあります。次のように名前を入力して、作成したものを選択します。

@Html.EditorFor(mm => mm.KompetensTest, "GreyedTemplate")

私が名前を付けたビューのコード: GreyedTemplate.cshtml

@model string

@Html.TextBox("", Model, new { onfocus = "", onclick="" })

最初のパラメーターは空であることに注意してください。EditorFor(mm => mm.KompetensTest,"GreyedTemplate") を使用すると、KompetensTest がフィールドの名前として自動的に使用されるため、これは意図的に行われました。

于 2013-02-22T14:03:32.973 に答える
0

プレースホルダー html 属性を使用したい ( http://www.w3schools.com/tags/att_input_placeholder.asp )

何かのようなもの@Html.EditorFor(mm => mm.KompetensTest, new { placeholder = "Text" })

于 2013-02-22T13:53:05.150 に答える