2015-12-07 3 views
2

Я новичок в веб-разработке. Я пытаюсь скопировать текст с iframe в textarea на веб-страницу Bootstrap-html.HTML/JavaScript: как скопировать текст из iframe

Пример моего кода здесь: https://jsfiddle.net/fe5ahoyw/

JavaScript
Я попытался:

var a = document.getElementById('LD1'); 
var b = document.getElementById('OD1'); 
if (a != null) 
{ 
    b.value = a.value; 
} 

Я также попытался:

var a = document.getElementById('LD1').innerHTML; 
var a = document.getElementById('LD1').value; 
var a = document.getElementById('LD1').html; 

Любая помощь будет любой помощь была бы очень признательна

Frostie

+0

У вас нет никакого содержания в IFRAME прямо сейчас –

+0

у меня есть он связан в текстовый файл на моем диске С. Я попытался связать его с текстовым файлом на линии, но не натолкнулся на jsfiddle! –

+0

, который не будет работать, из-за политики браузера, такой же, как мне кажется. Возможно, вы захотите использовать сервер, но позже он будет –

ответ

2

The JSFiddle в настоящее время пытается получить доступ к HTTP ресурс. Поскольку сам JSFiddle является http s, большинству браузеров это не понравится.

Тем не менее, селектор, который вы используете внутри кода, отключен. Вы должны получить the frame itself ->content of the frame ->element within the frame you are interested in. Я предложил бы использовать что-то вроде:

var a = document.getElementById('OD1'); 
var iFrame = document.getElementById('LD1'); 
var iFrameDocument = iFrame.contentDocument || iFrame.contentWindow.document; 
content = iFrameDocument.body.textContent; 
alert(content); 

if (content) 
{ 
    a.value = content.value; 
} 
+0

Hi , Я пробовал ваше устранение и получил следующую ошибку: «Uncaught SecurityError: Не удалось прочитать свойство contentDocument из« HTMLIFrameElement »: заблокирован кадр с исходным« нулем »при доступе к кадру с нулевым значением« null ». Протоколы, домены и порты должны совпадать. ' –

+1

Это теперь работает для IE, можно ли это изменить для работы в Chrome? –

Смежные вопросы