Javascript jQuery.data和动态更改HTML5自定义属性 问题是:
正在缓存jQuery对象html5自定义属性数据。Javascript jQuery.data和动态更改HTML5自定义属性 问题是:,javascript,jquery,Javascript,Jquery,正在缓存jQuery对象html5自定义属性数据。 在我的应用程序中,我有一个带有字段的表单,该字段具有不断变化的自定义数据属性,并且这种特定行为对于表单的功能来说是必需的 我们这里有: 有一个具有某些默认自定义属性的输入字段: <input type="text" name="xxx" data-test="4"> 获取自定义属性 对于$('input').data()结果将是{test=“4”} 更改自定义属性 $('input').attr('data-test'
在我的应用程序中,我有一个带有字段的表单,该字段具有不断变化的自定义数据属性,并且这种特定行为对于表单的功能来说是必需的
我们这里有: 有一个具有某些默认自定义属性的输入字段:
<input type="text" name="xxx" data-test="4">
获取自定义属性 对于
$('input').data()
结果将是{test=“4”}
更改自定义属性
$('input').attr('data-test','5')
获取自定义属性-请重试 对于
$('input').data()
结果仍然是{test=“4”}
问题:
如何始终确保使用
$.data()
函数获取所有真正的自定义属性,一个元素上可以有多个属性?在每次提取之前,我都尝试过$.removeData()
,但它会从元素中完全清除所有数据,因此无法再访问该元素。您需要这样做:$('input')。数据('test',5)
如果您调用.attr('test',5)
您将设置一个属性,并且您将像这样影响它
注意,您可以获得如下特定的数据属性:var test=$('input').data('test')代码>
编辑
要删除特定的数据属性,可以执行以下操作:jQuery.removeData($('input'),“test”)
您使用的是什么版本的jQuery?注意-在使用data
设置数据时,您应该使用驼峰大小写,因此数据我的属性
应该被引用为“myAttribute”,这很有趣,我以前从未考虑过。回顾过去,我只使用过一个单词属性。