开发者

Visual Studio warns me about some invalid html attributes

I have a list of items in an html table. On each row (tr) I'm proceeding like this:

<tr idAffaire="@suite.IdAffai开发者_StackOverflow社区re" idSuite="@suite.IdSuite" class="@suite.Username row droppable"> 

I used the attributes idAffaire and idSuite for retrieving some infos later. I know the official identification attribute is "id" but in my case I need 2 id. When I compile my code, VS is warning me about some things:

  • this name contains uppercase characters, which is not allowed.
  • attribute 'idaffaire' is not a valid attribute of element 'tr'
  • ...

Is it possible to prevent these warnings? Is there a better way of doing?

Thank you.


Yes, in Tools > Options > Text Editor > HTML > Validation > [Untick] Show errors

Ideally, you could use 2 hidden input fields with the id="suite" and value="whatever" to allow you to pick these up in a valid way.


The problem is that you are writing invalid HTML. As you mentioned, id is a valid attribute but idAffaire or idSuite are not. I'm assuming from the fact that you get a warning about uppercase characters, you are using an XHTML doctype. A better way to do this would be to use an HTML5 doctype:

<!DOCTYPE html>

And use custom data attributes for your new attributes:

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


I believe you should add name space extension of yours. Then define your newly introduced attributes.


What you are doing is termed as adding custom attributes to html elements, which have a very varying opinion among the experts.

Firstly , using capital in html attributes is not recommended, you can switch to small case. Secondly , adding custom attributes in XHTML (which i suppose you are using) throws warning, where as this is perfectly valid in HTML5.

there are few option to deal with it -

use Jquery .data() api to store data with java script. or follow a specific convention while storing data making it easy to maintain and read.You can follow HTML5 syntax

   <ul>
       <li data-id='5' data-name='john'></li>
   </ul>
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜