2012-12-12 18 views
0

jQuery中我可以追加和补充ATTR像:此:jQuery的 - .VAL并添加自定义属性值

<li class="test" ln="7" > 

如何获得r的值成这样:

$('#box input[name= _def]').val(JUNK) + "VALUE OF ln"; 

我可以在val后追加自定义属性'ln'的值吗?

+0

出于什么目的,你打算使用'attr'? – ianace

回答

2

使用data-属性来保存数据:

<li class="test" data-ln="7" > 

您可以使用jQuery使用.data()添加属性:

$li.data('ln', 7); 

你也可以使用.data()提取它(并自动转换成普通数据类型):

var ln = $li.data('ln'); 
+0

所有浏览器都支持此功能吗? – user1022521

+0

@ user1022521:当然,我不明白为什么不。我认为jQuery对不支持HTML5数据属性的浏览器使用'setAttribute()'。 – Blender

+0

它与HTML5 shiv或jQuery通过.data()默认值为您解决。 –

1

Better使用HTML-5数据属性validated HTML ..

这是supported by all the browsers.

<li class="test" data-ln="7" > 

var val = $('li.test').data('ln'); 

对于这样的情况下可以使用.data()方法提取的值。

如果你还愿意跟着您正在使用不推荐相同的语法,您可以使用getAttribute方法

var val = document.getElementsByClassName('test').getAttribute('ln');