使用AJAX调用执行Javascript

Execute a Javascript using AJAX call

本文关键字:Javascript 执行 调用 AJAX 使用      更新时间:2023-09-26

是否可以使用AJAX调用或调用Javascript中的特定函数来执行Javascript。

我可以显示Javascript文件的内容,如"http://www.w3schools.com/ajax/tryit.asp?filename=tryajax_first"但无法执行javascript.

有什么办法吗。实际上我是AJAX 的新手

Ajax允许您做两件事:
  1. 向服务器发出请求
  2. 阅读您得到的回复

任何其他事情都会发生在周围。

例如,如果您在服务器上运行NodeJS,那么HTTP请求将触发一些服务器端JavaScript。

如果你从服务器上取回JavaScript,那么你就可以在一个字符串中使用它,你可以对它做任何你喜欢的事情(包括通过eval()传递它)。

一般来说,像这样从服务器获取新的JS是个坏主意。最好先将JavaScript加载到网页中,然后根据从服务器返回的数据触发它。

如果我理解正确,这里的情况是服务器正在返回一些javascript代码,您需要对其进行评估

您可以使用此处所述的eval()函数。

在您提供的示例中,它将类似于:

var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (xhttp.readyState == 4 && xhttp.status == 200) {
      eval(xhttp.responseText);
    }
  };
  xhttp.open("GET", "ajax_info.txt", true);
  xhttp.send();

但是您应该小心,因为使用eval并不总是一个好主意。看到这个SO问题:为什么eval是个坏主意?