jQuery ตัวเลือก“ ไม่มีคุณสมบัติ” หรือไม่?


142

ฉันสามารถหา div ที่มีคุณลักษณะดังนี้:

$('.funding-plan-container[data-timestamp]')

แต่ถ้าฉันพยายามค้นหา div ที่ไม่มีคุณลักษณะนั้นฉันได้รับข้อผิดพลาด - รหัสของฉันคือ:

$('.funding-plan-container[!data-timestamp]')

มีตัวเลือก "ไม่มีแอตทริบิวต์" ใน jQuery หรือไม่?

สำหรับการอ้างอิงกรณีใช้งานที่นี่คือว่า div ใด ๆ ที่ไม่มีแอตทริบิวต์การประทับเวลาจะไม่ถูกเพิ่มแบบไดนามิกดังนั้นจึงเป็นประโยชน์

ขอบคุณ!

คำตอบ:


221

ใช้:not()ตัวเลือก

$('.funding-plan-container:not([data-timestamp])')

โดยวิธีนี้เป็นตัวเลือก API ตัวเลือกที่ถูกต้องดังนั้นจึงไม่เฉพาะเจาะจงกับ jQuery มันจะทำงานร่วมกับquerySelectorAll()และ CSS ของคุณ(ได้รับการสนับสนุนเบราว์เซอร์ )


12
วิธีอื่นในการเขียน `$ ('.
fund

@epascarello: จริงมาก
ฉันเกลียด Lazy


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.