[英]data attribute returning undefined? [on hold]
我正在尝试从以下HTML获取data-form-id
值,但使用console.log(formID);
返回undefined
?
编辑:
不好的是,我的课实际上是.hs-form
,有错字。
(function($) { $(document).ready(function() { var formID = $(".hs-form").data("form-id"); console.log(formID); }); })(jQuery);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form class="hs-form" data-form-id="1abe6767-4f6b-40c1-acb4-1b85bf33c932">
从jQuery .data()文档中:
.data()方法允许我们以一种安全的方式将任何类型的数据附加到DOM元素上,以防止循环引用,从而避免内存泄漏。
因此,如果要获取data- *属性的值,则需要使用.attr()
。
使用data()方法更新数据不会影响DOM中的属性。 要设置data- *属性值,请使用attr。
另外,您的html中没有.hs-form
。
如果您更喜欢使用.data()
,则需要先使用.data( key, value )
设置.data( key, value )
(function($) { $(document).ready(function() { var formID = $("form").attr("data-form-id"); console.log(formID); }); })(jQuery);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form class="form" data-form-id="1abe6767-4f6b-40c1-acb4-1b85bf33c932">
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.