Khi bạn muốn để có được những HTML của toàn bộ một phần tử DOM (wrapper bao gồm), bạn có thể làm như sau (như đã giải thích here):
$('#myElementId')[0].outerHTML
Nhưng những gì bạn không có thể làm là gọi outerHTML
trên $(this)
bên trong ví dụ một phạm vi bấm nghe hoặc công cụ chọn chức năng cơ thể:
$(this).outerHTML //Doesn't complete in IntelliSense, returns undefined in browser
hoặc
$(this)[0].outerHTML //Correction, this DOES work, but it doesn't complete in IntelliSense
vì IntelliSense sẽ không hiển thị innerHTML
hoặc outerHTML
trong những hoàn cảnh, mặc dù với vanilla JavaScript bạn có thể làm:
document.getElementById($(this).attr('id')).outerHTML
Vì vậy, ... có chuyện gì với điều đó?
Bạn có thực sự thử bản thân trình duyệt không? Tôi không đặc biệt nhìn thấy điểm của việc sử dụng 'outerHTML' theo cách đó nhưng điều đó sẽ hiệu quả. –
Có thể Intellisense không thể xác định rằng '$ (this) [0]' là một phần tử DOM, vì vậy nó không đề xuất thành viên DOM. –
Dựa vào giải thích của @ FrédéricHamidi. Bạn có nhận được bất kỳ intellisense trên '$ (this) .get (0) .outerHTML'? –