2011-02-06 27 views
6

フォーム検証に失敗した場合、プレーンテキストではなくツールチップを表示するように求められました。我々は現在、検証エラーメッセージを表示するためにasp.net MVC 3データアノテーションバリデーターを使用しています。私はまだMVCをかなり新しくしており、私はクリーンなソリューションを探してオンラインで数時間を過ごしました。誰かが正しい方向に私を指すことができるなら、私は確かにそれを感謝します。ASP.NET MVCデータ注釈ツールヒント

Thxを

答えて

0

すでにページに表示される検証エラーを持っているとして、あなたはそこに道のほとんどです。あなたが見ている必要があるのは、クライアント側のスクリプト(javascript)を使用して、これらをブラウザのツールチップとしてレンダリングする方法です。

後、あなたが何であるかかもしれ次のjQueryのプラグインを見てみましょう:あなたはあなたが適用するHTML属性を指定することができます http://jquery.bassistance.de/tooltip/demo/

7

あなたのコントロールに。これは、コントロールを作成するHtmlHelperメソッドの2番目のパラメーターを使用して行われます。たとえば、MVC 3の上にカーソルを置いたときに表示されるツールチップを含むテキストボックスを使用するには、このようなhtml title属性を使用します。

@Html.TextBoxFor(model => model.Name, new { @class = "form", @title= "Your name as you would like it to appear in the notification email" }) 

あなたは(MVC2にまたはのViewData)ViewBagを使用することができ、サーバー側のコードでは、あなたのコントローラからの値を使用します。だから、コードは次のようになります。

[HttpPost] 
public void Form(Model m) 
{ 
    if(m.Name.Length==0) 
     ViewBag.NameError = "Please enter your name"; 
} 

を、ビューコードは、この

@Html.TextBoxFor(model => model.Name, new { @class = "form", @title= (ViewBag.NameError==null?string.empty:(string)ViewBag.NameError)}) 
ようになります。
関連する問題