Skip Navigation Links
Novas Tecnologias
Ferramentas Adicionais
Ferramentas Adicionais


Dica No :
1080
Assunto : ASP.NET
Titulo: Simplificando montagem de atributos com hífem no MVC

Gostou do texto ? Vote e dê sua opinião! Pontuação atual :

Translate this page now :






Adicione aos Favoritos!
BlogBlogs Rec6 Linkk Ueba Technorati Delicious DiggIt! StumbleUpon



Tanto no HTML 5 como no jQuery Mobile há uma série de atributos que utilizam hífem (-) no nome do atributo, como por exemplo o atributo data-them do jquery mobile.

O problema é que inserir atributos com hífem nas tags pode não ser tão trivial quanto parece.

Teoricamente poderíamos fazer da seguinte forma :


@Html.TextBox("teste",string.Empty,new { data-theme="abc" });

O problema é que os objetos não podem ter atributos com hífem no nome, inviabilizando essa escrita. A solução seria utilizar um dictionary com outro dos overloads disponíveis :


@Html.TextBox("teste", string.Empty, new Dictionary<string, object>() { { "data-theme", "abc" } });


Porém essa síntaxe é demasiadamente trabalhosa, deixar o código repleto com essa síntaxe não seria nem um pouco adequado.

Felizmente os criadores do Razor incluiram um pequeno truque para nós : Se utilizarmos underscore (_) ao invés de hífem, o nome do atributo é renderizado com hífem corretamente. Assim podemos utilizar a síntaxe mais simplificada para incluir atributos com hífem :

@Html.TextBox("teste",string.Empty,new { data_theme="abc" });


Como podem ver, a síntaxe para incluir esses atributos se torna muito mais simples. Vale ainda observar que se os atributos tiverem sempre o mesmo valor dentro da página pode-se criar uma variável com esse anonymous type e apenas passar a variável como parâmetro na criação das tags.

Algo assim :

var atributos=new { data_theme="abc" };

@Html.TextBox("teste",string.Empty,atributos);

Nome :
E-mail:
Comentarios :
 
 
Os Últimos Comentários
data: 1/31/2017 11:08:00 PM
nome: YkozkrSnZm
email: derby451@hotmail.com
comentário:
NFzVjT http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/31/2017 11:57:00 AM
nome: APjvLfsTEv
email: derby451@hotmail.com
comentário:
RV3hSF http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/29/2017 10:08:00 PM
nome: LLIfAGAjsbslXroDt
email: derby451@hotmail.com
comentário:
dDbNkq http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/29/2017 9:06:00 PM
nome: OIUimzWUpDFuA
email: jogcbfn@hotmail.com
comentário:
nOsk9I http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

data: 1/29/2017 9:29:00 AM
nome: UIQQxEWLdnnqOM
email: jogcbfn@hotmail.com
comentário:
kLi1UC http://www.y7YwKx7Pm6OnyJvolbcwrWdoEnRF29pb.com

 1  
Dicas
Dica do Dia
Receba Dicas Por Email
E-mail :  
 


 (help)
Aceito receber informativos do devASPNet, informações de eventos e treinamentos

Veja Quais Informativos Você Receberá

Pesquisar Dicas
Pesquisar Artigos, Dicas e Noticias

Banco de Dados
Algumas Entrevistas
Links Importantes

Búfalo Informática, Treinamento e Consultoria
R. Alvaro Alvim, 37/920 Centro - Cinelândia - Rio de Janeiro Cep: 20031-010
Tel : (21) 2262-1368 (21) 9240-5134 E-mail : Contato@bufaloinfo.com.br