执行从ajax加载的javascript

时间:2015-08-10 14:36:00

标签: javascript jquery html ajax

我正在尝试根据从ajax调用返回的内容创建/更改javascript数组。这就是我到目前为止所做的工作:

function ajaxCall(code) {
    xmlhttp=new XMLHttpRequest();
    xmlhttp.open("POST","ShowBusiness",false);
    xmlhttp.send(code);
    document.getElementById("content").innerHTML = xmlhttp.responseText;
}

然后在该回复HTML中我(以及其他元素)

<script type="text/javascript">
    images = [1, 2, 3];
</script>

然而,当我尝试在原始页面中的函数中使用console.log(images);时,它告诉我“图像未定义”。然后我尝试返回并在原始页面的头部插入一个var images = [];,但随后控制台日志返回[],而不是我希望因ajax调用而改变的内容。

我有什么想法可以解决这个问题?我假设页面没有识别我使用ajax插入页面的javascript。

2 个答案:

答案 0 :(得分:0)

改为使用appendChild()

function ajaxCall(code) {
    xmlhttp=new XMLHttpRequest();
    xmlhttp.open("POST","ShowBusiness",false);
    xmlhttp.send(code);
    document.getElementById("content").appendChild(xmlhttp.responseText);
}

答案 1 :(得分:0)

不要认为脚本标签会在插入时执行。检查此问题中的答案(或原始问题的编辑)以获取几个解决方案:

Executing <script> elements inserted with .innerHTML