[问题] 透过javascript 更改data-*值

楼主: lovejoe7010 (shen)   2016-03-24 23:42:15
这是一个购物车的数量
<li class="cart" id='cart_div' data-cart="0"></li>
当我点选产品要加入购物车,想要透过js去变更data-cart的数值
我使用了_id('cart_div').dataset.cart可以抓到值
于是我想更改值 _id('cart_div').dataset.cart=2;
但画面上数值并不会变动
网络上有人说用以下语法变更
_id('cart_div').getAttribute('data-cart','7');
也没反应
想请各位大大指点指点,感恩
作者: Fantasywind (Fantasywind)   2016-03-25 04:37:00
setAttribute
作者: akccakcctw (947)   2016-03-25 09:37:00
楼主: lovejoe7010 (shen)   2016-03-25 11:35:00
楼上大大的连结我看不懂怎么用哩><
作者: aaa7513231 (浑沌与秩序)   2016-03-25 15:10:00
作者: Hevak (Arthow Eshes)   2016-03-25 23:22:00
你画面是用什么东西出来的?你是不是有用什么东西去取值再弄到画面上?单纯document.getElementByID('cart_div').dataset.cart=2;当然不会同时更改你利用那个值生出来的画面,你可以打开浏览器开发者工具看,实际上data-cart是已经被改成2的,但你应该有利用这个值去对li做更动?你可以试试看:var $cartDiv = document.getElementByID('cart_div');$cartDiv.innerHtml = $cartDiv.dataset.cart;$cartDiv.dataset.cart=2;$cartDiv.innerHtml = $cartDiv.dataset.cart;//更新画面数值这些东西是没有在自动绑定的,你改了什么就要重新去用同样的流程再修改
楼主: lovejoe7010 (shen)   2016-03-26 12:38:00
解决了!!谢谢各位大大们指导!

Links booklink

Contact Us: admin [ a t ] ucptt.com