在Pug中使用Ajax更改文本内容

我必须在我的网站上使用Ajax进行学校项目。我想更改按钮的内容,但首先要更改一些文本。我找到了一些有关如何更改帕格文件中文本的示例,但它们似乎从未起作用。有人知道我在做什么错吗?

哈巴狗:

extends layout

block content
    #reizen.w3-content.w3-container.w3-padding-64
        //test ajax        
        #demo
            h2 The XMLHttpRequest Object
            button(type='button' onclick='loadDoc()') Change Content

    block content
    script.
        function loadDoc() {
            var xhttp = new XMLHttpRequest();
            xhttp.onreadystatechange = function() {
                if (this.readyState == 4 && this.status == 200) {
                    document.getElementById("demo").innerHTML =
                    this.responseText;
                }
            };

            xhttp.open("GET","ajax_info.txt",true);
            xhttp.send();
        }

我在根图中还有一个小文件ajax_info.txt(pug文件在views-map中),只有:

Ajax is cool!

结果始终是一些文本:XMLHttpRequest对象, 在文本下方有一个带有“更改内容”的按钮,但是当我单击它时什么也没有发生。

lovers_php 回答:在Pug中使用Ajax更改文本内容

Pug是与Ajax完全分开的范例。 Ajax用于从服务器发出请求而无需重新加载页面,当从服务器请求页面时,pug会动态呈现页面。一个pug应用程序涉及构建多个页面,而Ajax应用程序使用一个页面。

您可以使用pug生成HTML和JavaScript,但这就是pug的结尾。根本无法在Ajax调用中使用它。

您应该研究Axios或jQuery之类的Ajax库,并将注意力集中在那里。您可以使用Express(无pug)来处理API调用。

本文链接:https://www.f2er.com/2957237.html

大家都在问