2017-10-12 7 views
0

は、フォームの以下の部分はHtmlHelperのを使用して作成したI Htmlhelper.editorfor()(MVC)を介して、カラーinputtypeの作成:

<div class="form-group"> 
     @Html.LabelFor(model => model.ColorCode, htmlAttributes: new { @class = "control-label col-md-2" }) 
     <div class="col-md-10"> 
      @Html.EditorFor(model => model.ColorCode, new {htmlAttributes = new { @class = "form-control" } }) 
      <!--<input type="color" class="form-control"/>--> 
      @Html.ValidationMessageFor(model => model.ColorCode, "", new {@class = "text-danger"}) 
     </div> 
    </div> 

デフォルトでは、それだけで通常の作成ようColorCodeのデータ型は、文字列です。テキストボックス。私が望むのは、入力をカラーセレクタとして動作させることです。コメントされたhtmlは基本的に私が作成したいものです(該当する場合はフォームに接続するために必要な属性もあれば、HTML専門家でもありません)。これを行う方法はありますか?私は自分の検索でそれに関する情報を見つけることができません。

+1

'@ Html.TextBoxFor(m => m.ColorCode、new {@class =" form-control "、type =" color "})' –

答えて

1

あなたはこのような何かを試すことができます。

@Html.TextBoxFor(model => model.ColorCode, new {@class="form-control", type="color"}) 

EditorForは、HTML出力を生成するためのエディタのテンプレートを使用します。それを使用するには、特定のプロパティタイプに対してエディタテンプレートを定義する必要がありますが、それはstringなので、少し一般的です。

また、@Stephen Mueckeはコメントでそれを指摘しました。

+0

これは問題なく動作します。私が試して失敗した私の初期の解決策も、実際にはうまくいった。しかし、私はあなたのものが好きです。それ以来、私は '@ Html.'形式を使い続けることができます。問題は、実際には私のカラーコードのタイプをintからintへのバックエンドの文字列に変更したことです(colorpickerの型からの入力を扱い易くするため)。しかし、APIの一部を更新してintではなく文字列。関係なく、ありがとう! – user1339253