Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.06.2018, 15:57
Профессор
Отправить личное сообщение для s24344 Посмотреть профиль Найти все сообщения от s24344
 
Регистрация: 12.08.2015
Сообщений: 206

Аналог функции .load() библиотеки jquery на native javascript
Ребята, подскажите пожалуйста, как в ответе с сервера вытащить необходимый участок кода. В данном примере мне нужно вырезать: #content-ajax
Заранее спасибо.

request.open('GET', info, true);

request.addEventListener('readystatechange', function () {
  if ((request.readyState == 4) && (request.status == 200)) {

    const res = request.responseText;

    wrap.innerHTML = request.responseText;
  }
});

request.send();


info - в данном случае, это содержимое html файла

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Стоматология "Белый Кит" | Челябинск</title>
    <meta content="" name="author">
    <meta content="" name="description">
    <meta content="" name="keywords">
    <meta content="width=device-width, initial-scale=1" name="viewport">
    <meta content="ie=edge" http-equiv="x-ua-compatible">
    <link rel="stylesheet" href="/assets/css/app.css">
  </head>
  <body>
    <div id="content-ajax">
      <h1>First</h1>
    </div>
  </body>
</html>

Последний раз редактировалось s24344, 26.06.2018 в 21:05.
Ответить с цитированием
  #2 (permalink)  
Старый 26.06.2018, 16:22
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

А что на сервере нет языка чтобы отдавать на запрос только необходимое, а не код целой страницы?
Ответить с цитированием
  #3 (permalink)  
Старый 26.06.2018, 16:26
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,144

s24344,
request.open('GET', info, true);

request.addEventListener('readystatechange', function () {
  if ((request.readyState == 4) && (request.status == 200)) {

    const res = request.responseText;
    wrap.innerHTML = res;
    let div = wrap.querySelector('#content-ajax');
    wrap.innerHTML = "";
    wrap.appendChild(div)
  }
});

request.send();
Ответить с цитированием
  #4 (permalink)  
Старый 26.06.2018, 16:53
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Сообщение от рони
let div = wrap.querySelector('#content-ajax');
wrap.innerHTML = "";
wrap.appendChild(div)
лучше подстраховаться и перед wrap.innerHTML = ""; таки сделать div.parentNode.removeChild(div);

а то ведь всякое бывает
https://learn.javascript.ru/memory-r...0%B7-innerhtml
Ответить с цитированием
  #5 (permalink)  
Старый 26.06.2018, 19:27
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,144

Alexandroppolus,
Ответить с цитированием
  #6 (permalink)  
Старый 26.06.2018, 20:14
Профессор
Отправить личное сообщение для s24344 Посмотреть профиль Найти все сообщения от s24344
 
Регистрация: 12.08.2015
Сообщений: 206

Спасибо за помощь.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Аналог jQuery(...).animate на чистом JS 2chan Общие вопросы Javascript 3 12.07.2015 19:23
Почему на элемены импортированные с помощью .load функции JS не действуют? Vladjiss jQuery 6 23.06.2013 05:02
jQuery и переменные JavaScript master-sheff AJAX и COMET 2 22.01.2010 21:28
На много ли код jQuery медленнее чистого javascript format1981 jQuery 8 06.11.2009 10:42
Создание Новой Библиотеки JavaScript Rudolf Eremyan Элементы интерфейса 9 21.09.2009 22:45