Одностраничный HTML без обновления, JS и сервер на Java

164
24 февраля 2019, 17:30

Есть мини java-сервер, есть одностраничный интерфейс примерно следующего типа (тестовый). Необходимо создать скрипт такого вида, который позволяет отправить GET запрос, получить данные от Java-HTTP сервера и вставить данные в теги table.innerHTML .

Как выполнить отправку и получение GET - запроса без перезапуска страницы, с минимальными зависимостями? Желательно, даже без JQuery, на голом JS, но литература показывает, что без AJAX такие финты весьма проблематичны ...

Просьба: установку отдельного HTTP - сервера не рекомендовать, условия ТЗ не позволяют.

Примерный код интерфейса:

<script> 
 
function SetBackGround(sender) 
{ 
 
    var cells = sender.getElementsByTagName("td"); 
    var td = document.getElementsByTagName("td"); 
     
    for(i=0;i<td.length;i++) 
    { 
        td[i].style.backgroundColor = "#ffffff"; 
    } 
           
    cells[0].style.backgroundColor = "#dddeee"; 
    cells[1].style.backgroundColor = "#dddeee"; 
    cells[2].style.backgroundColor = "#dddeee"; 
     
    var s1 = document.getElementById('s1'); 
    var s2 = document.getElementById('s2'); 
    var s3 = document.getElementById('s3'); 
     
     
    s1.value = cells[0].textContent; 
    s2.value = cells[1].textContent; 
    s3.value = cells[2].textContent; 
     
    fetch('127.0.0.1:8080/22').then(function(response)  
	{  
		response.text().then(function(text)  
		{  
			s3.value = text;  
		});  
	}); 
	 
    //cells[0].innerText = str; 
    //cells[1].innerHTML = "<a href='http://ya.ru'>" + str + "</a>"; 
 
}
<style>table, 
th, 
td { 
  border: 1px solid grey; 
  border-collapse: collapse; 
  align: center; 
} 
 
.child { 
  height: 80; 
  display: inline-block; 
  align: center; 
  width: 60%; 
} 
 
.container { 
  overflow: hidden; 
  width: 100%; 
  height: 100% 
} 
 
.box { 
  display: inline-block; 
  width: 100% 
} 
 
.box div { 
  display: inline-block 
} 
 
.td { 
  height: 100%; 
} 
 
.b1 { 
  width: 60%; 
} 
 
.b2 { 
  width: 30%; 
  align: right; 
} 
 
</style>
<div class="container"> 
  <div class="box"> 
 
 
    <div class="b1"> 
      <table width="100%" id="common"> 
        <tr onclick="SetBackGround(this)"> 
          <td>1</td> 
          <td>2</td> 
          <td>3</td> 
        </tr> 
        <tr onclick="SetBackGround(this)"> 
          <td>4</td> 
          <td>5</td> 
          <td>6</td> 
        </tr> 
        <tr onclick="SetBackGround(this)"> 
          <td>7</td> 
          <td>8</td> 
          <td>9</td> 
        </tr> 
        <tr onclick="SetBackGround(this)"> 
          <td>10</td> 
          <td>11</td> 
          <td>12</td> 
        </tr> 
        <tr onclick="SetBackGround(this)"> 
          <td>13</td> 
          <td>14</td> 
          <td>15</td> 
        </tr> 
        <tr onclick="SetBackGround(this)"> 
          <td>16</td> 
          <td>17</td> 
          <td>18</td> 
        </tr> 
      </table> 
    </div> 
 
 
 
    <div class="b2"> 
      Section1 : <br> 
      <input type="text" id="s1" value="s3"> <br> Section2 : <br> 
      <input type="text" id="s2" value="s3"> <br> Section3 : <br> 
      <input type="text" id="s3" value="s3"> <br> <br> 
    </div> 
 
 
  </div> 
</div>

Unexpected token <", "filename": "https://stacksnippets.net/js", "lineno": 106, "colno": 9 }

READ ALSO
JavaScript анимация [дубликат]

JavaScript анимация [дубликат]

На данный вопрос уже ответили:

241
Убрать title из видео youtube

Убрать title из видео youtube

Пользуюсь Iframe API, iframe создаю вручную,вставляю вот такой код

131
Js приложение то работает то нет [закрыт]

Js приложение то работает то нет [закрыт]

Не могу понять в чем проблемаЕсть приложение myeveryday

188
ES6 Проблема наследования

ES6 Проблема наследования

У меня есть подкласс Покупатель и класс Витрина, он наследуется от класса Пользователь, те

183