如何获取Select2元素的data-properties属性
解决获取
data-properties属性值的问题 你代码里的问题主要出在getAttribute的调用方式上,修复后可以正常获取属性值,以下是两种可行的写法:
1. 原生JavaScript写法
$('#checkout_shipping_address_id').on('select2:select', function (e) { var data = e.params.data; // getAttribute是方法,需用括号调用,属性名要以字符串形式传入 var properties = data.element.getAttribute('data-properties'); console.log(properties); });
2. jQuery简洁写法
既然你已经在用jQuery,也可以把原生DOM元素转为jQuery对象,用data()方法直接读取(会自动识别data-前缀):
$('#checkout_shipping_address_id').on('select2:select', function (e) { var data = e.params.data; var properties = $(data.element).data('properties'); console.log(properties); });
如果data-properties存储的是JSON格式字符串,还需要用JSON.parse()转为对象:
var propertiesObj = JSON.parse(properties); console.log(propertiesObj);
内容的提问来源于stack exchange,提问作者user20942136
相关产品推荐
相关产品推荐

