Подтвердить что ты не робот

Как загрузить html в переменную с jquery

Я знаю, что могу загрузить в html в div с помощью:

$("#my_div").load("http://www.mypage.com");

но я хочу, чтобы загрузить html в переменную типа:

my_var = load("http://www.mypage.com");

Любая помощь велика.

Я хотел бы зациклиться, хотя некоторые элементы вроде:

HLS.functions.LoadSideModules = function() {
    HLS.sideModuleContent = new Object();
    for(var i = 0; i < HLS.currentModuleConfig.POLICIES.POLICY.length; i++) {
        for(var y = 0; y < HLS.currentModuleConfig.POLICIES.POLICY[i].PAGES.PAGE.length; y++) {
            for(var POS in HLS.currentModuleConfig.POLICIES.POLICY[i].PAGES.PAGE[y]) {
                var item = HLS.currentModuleConfig.POLICIES.POLICY[i].PAGES.PAGE[y][POS];
                if(!HLS.sideModuleContent[item]) {
                    HLS.sideModuleContent[item] = j.get(HLS.config.K2GETMODULE + HLS.currentModuleConfig.POLICIES.POLICY[i].PAGES.PAGE[y][POS]);
                }
            }
        }
    }
};
4b9b3361

Ответ 1

$.get("http://www.mypage.com", function( my_var ) {
    // my_var contains whatever that request returned
});

Под jQuery запустится запрос ajax, который запускается с заданным URL-адресом. Он также пытается разумно угадать, какие данные будут получены (если это действительный html, который вам не нужно указывать). Если вам нужно получить другой тип данных, просто передайте это в качестве последнего аргумента, например

$.get("http://www.mypage.com", function( my_var ) {
    // my_var contains whatever that request returned
}, 'html');  // or 'text', 'xml', 'more'

Ссылка: .get()

Ответ 2

Вы также можете создать элемент в памяти и использовать для него load():

var $div = $('<div>');

$div.load('index.php #somediv', function(){
    // now $(this) contains #somediv
});

Преимущество состоит в том, что вы можете указать, какую часть index.php вы хотите загрузить, используя селектор (#somediv)

Ответ 3

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

Если вы хотите скопировать только конкретный раздел html, это также обеспечивает гибкость, чтобы заполнить все содержимое в пределах иерархии элементов (т.е. со всеми включенными детьми) с выбранной страницы.

Например, если иерархия -

<div id='mydiv'>
    <div>
        <span>
        ...</span>
    </div>
</div>

//...

var oldElement = document.getElementById('mydiv');
var newElement = oldElement.cloneNode(true);

/* #selector selects only that particular section & the '> *' enables to copy all of the child nodes under the parent #selector
Replace URL with the required value
function specification is optional... */

jQuery(newElement).load(URL+'#selector > *'[,function(response, status, xhr){}]);

//...

Теперь вы можете программно обрабатывать переменную newElement по своему усмотрению (используя собственный javascript, так как он является родным элементом).

Ответ 4

    function includeHTML_callBack(result){
        var my_var = result;
    }

    function includeHTML(link, callBack) {
            var xhttp = new XMLHttpRequest();
            xhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                callBack(this.responseText);
            }
          }      
          xhttp.open("GET", link, true);
          xhttp.send();
          return;
    }

    includeHTML("http://www.mypage.com", includeHTML_callBack);