JQuery中的data方法和attr方法可以很方便的获取元素的data-*属性值,如:


<div id="site" data-url="http://www.codesou.cn" >码农资源网</div>
<script>
var url1 = $("#site").data("url");//url1为http://www.codesou.cn
var url2 = $("#site").attr("data-url");//ur2l为http://www.codesou.cn
</script>

但是在select中我们却无法通过data方法获取data-*属性,而只能通过attr方法来获取,如:


<select class="text-center" name="student" id="student" >
   <option data-id="202001" value="1306">王芳</option>
   <option data-id="202002" value="2846">刘晓晨</option>
   <option data-id="202003" value="3206">周子怡</option>
</select>
<script>
$('#student').on('change',function(){
var id1 = $(this).find("option:selected").attr('data-id');//选中项的data-id
var id2 = $(this).find("option:selected").data('id');//undefined
})
</script>