2015-01-13 2 views
2

Я пытаюсь получить один div с одной URL-адреса веб-страницы на другую веб-страницу и отображать в текстовом формате с использованием getElementById без использования AJAX или jQuery, потому что я собираюсь реализовать его в FitNesse. Есть ли способ передать URL-адрес?getElementById с другой страницы

+1

Вы можете сделать это с помощью AJAX, если эта другая страница находится в вашем домене. В противном случае может помочь JSONP или просто строка PHP. –

+0

Не без каких-либо внешних запросов, таких как ajax – Ding

+1

Являются ли страницы в одном домене? В противном случае вы можете столкнуться с некоторыми неприятными ошибками CORS (http://www.w3.org/TR/cors/) – Dencker

ответ

-1

На странице 1.

<div id="dataDiv">1234</div> 
<a id="getData" href="">Page2</a> 

<script> 
var data = document.getElementById('dataDiv').innerHTML; 
//This will get the content from the div above with the id of "dataDiv" 

document.getElementById("getData").setAttribute("href","page2.html?var="+data); 
//This will set the url of the anchor with the id of "getData" with your url and the passing data. 
</script> 

А на странице 2

function getUrlVars() { 
    var vars = {}; 
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) { 
     vars[key] = value; 
    }); 
    return vars; 
    } 
    var var1 = getUrlVars()["var"]; 

Это будет посылать содержимое в вашем DIV на странице одной страницы два. результат url на странице 1 будет page2.html? var = 1234

+0

Если вы внимательно прочитали: 'getelementbyid с другой страницы' –

+0

Отредактировано. Если вы пройдете несколько номеров, это довольно простой способ сделать это. –

+0

Адам, то, что вы создаете, это: установка HTML всего элемента внутри ссылки, после нажатия которой вы перейдете на другую страницу, и только на этой другой странице вы прочитаете ["var"] String Query. ** Это не имеет ничего общего с очищающим контентом (от Element ID) с внешней страницы **. –

2

Вы можете загрузить URL-адрес в скрытом iframe.

Затем используйте iframe.contentWindow.document.getElementById ($ ID), как описано здесь: How to pick element inside iframe using document.getElementById

Что-то вдоль линий:

<iframe src="urlWithinYourDomain.html" style="display:none"></iframe> 

, сопровождаемых функция что-то вроде:

var divElement = document.getElementById('iframeId').contentWindow.document.getElementById('elementIdOnSourcePage'); 
document.getElementById('targetParentId').appendChild(divElement); 

Боюсь, я не могу проверить это на данный момент, так что могут быть синтаксические ошибки, но я думаю, что это передает идею. Это немного грязный подход, но, учитывая ваши ограничения, это лучший способ увидеть, что вы просите.

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