简单的ajax无法正常工作,可能是语法错误

时间:2009-12-09 05:13:39

标签: javascript ajax syntax

window.onload = function(){
  testAjax();
}

var testAjax = function(){
  var request = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest();
  request.onreadystatechange = function(){
    if (request.readyState == 4){
      // Server is done
       try{
        var p = document.getElementById['a'];
        p.innerHTML = request.responseText;
         //document.write(request.responseText);
       }
       catch(e){
        document.write('More Epic Fail');
       }
    }
  }
  request.open('GET','updatethumbs.php',true);
  request.send(null);
}

3 个答案:

答案 0 :(得分:3)

快速浏览一下后:

var p = document.getElementById['a'];

应该是:

var p = document.getElementById('a');

答案 1 :(得分:2)

getElementById应该有()的,而不是[]的

答案 2 :(得分:0)

是的,使用“圆括号”/括号()

MSXML组件有一些名称,并且根据用户(在本例中为您)的安装情况,它可能无效。

编辑:(根据问题编辑)

根据CSS规范,浏览器在呈现页面后不需要重绘页面。您需要使用javascript来设置动态添加的项目的样式。例如:

document.getElementById('a').style.border = "1px solid black";

表示简单的黑色边框。