Вызов AJAX из TXT: как «конвертировать» текст из html в ejs? - PullRequest
0 голосов
/ 17 июня 2019

Я создал веб-страницу, где при нажатии кнопки она «читает» TXT-файл и добавляет его текст на страницу.

Веб-страница является страницей EJS.

Я пытаюсь передать некоторый код EJS через файл TXT, но он не работает, потому что страница не отображает код EJS.

<div style="text-align:center" id="mostraid">
    <button class="btn btn-info" type="button" onclick="MostraID('../public/ajaxtext.txt',CB)" >MOSTRA ID</button>
</div>
<script>
function MostraID(url, cFunction) {
    var xhttp;
    xhttp=new XMLHttpRequest();
    xhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            cFunction(this);
        }
    };
    xhttp.open("GET", url, true);
    xhttp.send();
}
function CB(xhttp) {
    document.getElementById("mostraid").innerHTML =
        xhttp.responseText;
}
</script>

Файл ajaxtext.txt содержит: Ваш идентификатор пользователя <% = user.id%>

Вызов AJAX работает нормально, но на веб-странице отображается «Ваш идентификатор пользователя <% = user.id%>» вместо «Ваш идентификатор пользователя 834948394583 (пример)»

Есть ли какой-нибудь способ конвертировать текст из txt файла в EJS?Эта веб-страница включена в проект Express, поэтому при необходимости я могу добавить некоторый код на стороне сервера.

Большое спасибо за помощь и извините за мой плохой английский!

РЕДАКТИРОВАТЬ: Semplifiedфункция без обратного вызова

<div style="text-align:center" id="mostraid">
    <button class="btn btn-info" type="button" onclick="MostraID()" >MOSTRA ID</button>
</div>
<script>
function MostraID() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      document.getElementById("mostraid").innerHTML =
      this.responseText;
    }
  };
  xhttp.open("GET", "../public/ajaxtext.txt", true);
  xhttp.send();
}
</script>
...