2011-08-07 14 views
3

私はHTMLテーブルに項目のリストを持っています。各行(TR)で、私は次のように進めています:Visual Studioはいくつかの無効なhtml属性について警告します

<tr idAffaire="@suite.IdAffaire" idSuite="@suite.IdSuite" class="@suite.Username row droppable"> 

私は後でいくつかに関する情報を取得するためのidAffaireidSuite属性を使用していました。私は公式の識別属性が "id"であることは知っていますが、私の場合は2 idが必要です。コードをコンパイルすると、VSはいくつかのことについて私に警告しています。

  • この名前には大文字が含まれていますが、これは許可されていません。
  • 属性 'idaffaireは' 'TR' 要素の有効な属性
  • ではありません...

は、これらの警告を防止することが可能ですか?より良いやり方がありますか?

ありがとうございます。

+0

あなたはHTML5のDOCTYPEを使用していることを辿ることができますか? –

答えて

0

問題は、無効なHTMLを書いていることです。上記のとおり、idは有効な属性ですが、idAffaireまたはidSuiteはありません。私はあなたがXHTMLのdoctypeを使用している大文字に関する警告を得るという事実から仮定しています。

<!DOCTYPE html> 

そして、あなたの新しい属性のデータは、カスタム属性を使用します:

<tr data-affaire="@suite.IdAffaire" data-suite="@suite.IdSuite" class="@suite.Username row droppable"> 
+1

私は既に<!DOCTYPE html>を使用していますが、VSはまだ私に警告しています...次に、data-affaire = "...."を使用してみましたが、無効な属性要素に関する警告が表示されます。私は警告がないところの解決策を望んでいます:) – Bronzato

+0

その場合は、検証をオフにする必要があると思います!VSがHTML5に対して妥当性を確認するように設定されていても(ツール - >オプション - >テキストエディタ - > HTML - >妥当性チェックを参照)、カスタムの 'data'属性を検証しないので、とにかく私の例で警告が表示されます。 –

0

あなたの名前空間の拡張子を追加する必要があります。次に、新しく導入された属性を定義します。

3

はい、ツールで> [オプション]> [テキストエディタ> HTML>バリデーション> [チェックを外し]は理想的には、エラー

を表示するには、ID =「スイート」で2つの隠された入力フィールドを使用することができ、値は=「何でも」へこれらを有効な方法で選択することができます。

0

何カスタムを追加するなどと呼ばれているのはHTMLに属性これを行うには良い方法は、HTML5のDOCTYPEを使用することです要素は、専門家の間で非常に様々な意見を持っています。

まず、html属性の大文字を使用することはお勧めできません。小文字に切り替えることができます。 第2に、XHTML(私が使用していると思われる)のカスタム属性を追加すると警告がスローされます。これはHTML5では完全に有効です。

それに対処するためのいくつかのオプションがあります -

はJavaスクリプトを使用してデータを保存するためにjQueryの.DATA()APIを使用しています。維持することが容易となるデータを格納しながら または は、特定の規則に従うとread.Youは、HTML5の構文

<ul> 
     <li data-id='5' data-name='john'></li> 
    </ul> 
関連する問題