关于jQuery中的attr和data问题
今天在使用data获取属性并且赋值时遇到一个小问题,写下来防止以后再跳坑。
在使用jQuery获取自定义属性值时,我们习惯用
$(selector).attr('data-value');
jQuery赋值:
$(selector).attr('data-value','123456');
而data的取值:
$(selector).data('value');
data赋值:
$(selector).data('value','123456');
值得注意的是data,如果决定使用data就不要再使用attr,交叉混用是拿不出值的。因为data是单项绑定,返回的数据不会实时更新到dom。
如果真的需要更新dom上的自定义属性值,那只能把data取出的值放入attr中,感觉很麻烦不是吗?
另一个小坑,如果dom中赋值是一个字符串true,使用data取出的却是boolean true。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步