Cho phép nói rằng tôi có một trang trên cùng một tên miền mà tôi đặt bên trong khung nội tuyến. Trong khung nội tuyến, tôi đã thêm dữ liệu vào một yếu tố, một cái gì đó như thế này:Truy cập dữ liệu jQuery từ phần tử iframe
HTML
<div id="data"></div>
Script
$('#data')
.data('test1', 'this is test data 1')
.data('test2', ['John', 'Smith'])
.data('test3', {
alert1: function() {
$('#data').append('test3: successful<br>');
}
})
Bây giờ khi trang này nằm trong iframe, tôi biết tôi có thể truy cập phần tử như sau:
$('#frame').contents().find('#data');
Nhưng khi tôi cố gắng lấy dữ liệu từ phần tử đó, nó luôn không xác định.
$('#frame').contents().find('#data').data('test1'); // shows up as undefined
Tôi biết jQuery cửa hàng data()
nội bộ trong một đối tượng cache
, nhưng tôi không biết làm thế nào để truy cập nó từ bên ngoài tài liệu đó. Tôi đã thiết lập this demo để hiển thị sự cố của mình. Nhấp vào nút "Lấy dữ liệu khung" để xem kết quả.
tôi sẽ đánh giá cao bất kỳ đầu vào :)
Bạn Rock Nick! Cảm ơn! – Mottie
@fudgey - welcome :) –
điều này đã lưu ass của tôi. cảm ơn. – Bnrdo