更改自定义属性值

我有一些代码,我添加了自定义属性,我想改变它的值。

这是我正在尝试的:

 $("#somebutton").click(function() { $('myCustomElement').val('SomeNewValue'); }); 

但没有任何改变。 我怎样才能让它发挥作用?

首先,发明您自己的属性意味着您的HTML无效,并可能导致您的网页出现问题。 其次, val()用于直接更改元素的value属性,因此它在您的示例中没有任何效果。

要实现您的需求,请使用data-*属性,因为它们用于此目的:

 
 $("#somebutton").click(function() { // getter: var foo = $('div').data('custom'); // = 'someValue' // setter: $('div').data('custom', 'someOtherValue'); }); 

请注意, data()在内存中维护一个对象,因此您在DOM中看不到任何修改。

有关更多信息,请访问: http : //api.jquery.com/data

你的元素不是自定义的,它仍然是一个div。

你可以像这样做一个自定义元素。

  

然后选择喜欢

 $('myCustomElement')... 

另一种方法是使用数据属性。

 

然后选择这样

 var data = $('div').data('myCustomData')//data = 'test'