function doAjaxSearch(methor, url, param, action)
{
var req = new ActiveXObject( 'Microsoft.XMLHTTP');
if (req) {
    req.onreadystatechange=function() {
var ajaxContent = new Object();
ajaxContent.XMLHttpRequest = req; if (req.readyState==4 && req.status==200) {
ajaxContent.responseText = req.responseText.trim();
ajaxContent.responseXML = req.responseXML;
                ajaxContent.jsonObject = eval("(" + ajaxContent.responseText + ")");
eval(action + "(ajaxContent)");
}
}
}
req.open(methor, url);
    req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    req.send(param);使用companion.js进行跟踪提示错误信息是:缺少'}'(line38)(ajax.js)第38行就是红色字体的位置.
这种现象时有时无.很不规律...,请大家帮忙看看是为什么呀??

解决方案 »

  1.   

    function doAjaxSearch(methor, url, param, action) 

      if (req) {     req.onreadystatechange=function() {       if (req.readyState==4 && req.status==200) { 
          }     }
      }
    }
      

  2.   

    function doAjaxSearch(methor, url, param, action)
    {
    var req = new ActiveXObject( 'Microsoft.XMLHTTP');
    if (req) {
        req.onreadystatechange=function() {
    var ajaxContent = new Object();
    ajaxContent.XMLHttpRequest = req; if (req.readyState==4 && req.status==200) {
    ajaxContent.responseText = req.responseText.trim();
    ajaxContent.responseXML = req.responseXML;
                    ajaxContent.jsonObject = eval("(" + ajaxContent.responseText + ")");
    eval(action + "(ajaxContent)");
    }
    }
    }
    req.open(methor, url);
        req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        req.send(param);
    }
    刚才发错了,不好意思....
      

  3.   

    那个eval(...)中的小括号是什么意思?可以这样用这个函数吗?
      

  4.   

    (" + ajaxContent.responseText + ")里面的双引换成单引