รับรายการคุณลักษณะ data- * โดยใช้ javascript / jQuery
กำหนดองค์ประกอบ HTML โดยพลการพร้อมคุณสมบัติศูนย์หรือมากกว่าdata-*นั้นเราจะเรียกรายการคู่คีย์ - ค่าสำหรับข้อมูลได้อย่างไร เช่นได้รับสิ่งนี้: <div id='prod' data-id='10' data-cat='toy' data-cid='42'>blah</div> ฉันต้องการที่จะสามารถเรียกคืนนี้โดยทางโปรแกรม: { "id":10, "cat":"toy", "cid":42 } การใช้ jQuery (v1.4.3) การเข้าถึงแต่ละบิตของข้อมูลที่ใช้$.data()นั้นเป็นเรื่องง่ายหากรู้ล่วงหน้าคีย์ แต่ไม่ชัดเจนว่าจะใช้ข้อมูลชุดใดชุดหนึ่งได้ ฉันกำลังมองหาโซลูชัน jQuery ที่ 'ง่าย' ถ้ามีอยู่ แต่จะไม่คำนึงถึงวิธีการระดับล่าง ฉันพยายามแยกวิเคราะห์$('#prod').attributesแต่การขาด javascript-fu ทำให้ฉันผิดหวัง ปรับปรุง customdataทำสิ่งที่ฉันต้องการ อย่างไรก็ตามการรวมปลั๊กอิน jQuery สำหรับฟังก์ชั่นการใช้งานบางส่วนนั้นดูเหมือนว่าเป็นการ overkill การมองแหล่งที่มาช่วยให้ฉันแก้ไขรหัสของตัวเอง (และปรับปรุงจาวาสคริปต์ของฉัน) นี่คือวิธีแก้ปัญหาที่ฉันได้รับ: function getDataAttributes(node) { var d = {}, re_dataAttr = /^data\-(.+)$/; …