微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP Ajax函数在Win 2003 machin中不起作用

如何解决PHP Ajax函数在Win 2003 machin中不起作用

| 我已经用javascript(对于PHP)编写了ajax函数。在WIN-XP机器上可以正常工作,但在Win-2003上则无法工作。 对于onclick事件,我正在调用
fun_LeaveLength_JS_G
函数。在里面,我正在设置xmlhttp2.onreadystatechange = function()。那没有执行。 我的功能如下:
function fun_LeaveLength_JS_G(dG1,dG2)
{
    err2=true;

    G_EmpIdFromJS=document.frmleaveApp.txtG_EmpId.value;
    G_PL_CountJS=document.frmleaveApp.txt_PLCount.value;

    PLAvailabe_JS= document.frmleaveApp.PL_available.value;

    CLAvailabe_JS=document.frmleaveApp.CL_available.value;

    LWPAvailabe_JS=document.frmleaveApp.LWP_available.value;
    MLAvailabe_JS=document.frmleaveApp.ML_available.value;

    COMPAvailabe_JS=document.frmleaveApp.COMP_available.value;

    FromHomeAvailabe_JS=document.frmleaveApp.txt4mHome_available.value;

    LeaveType_JS=document.frmleaveApp.sltLeaveType.value;

    alert(PLAvailabe_JS+\" \"+ CLAvailabe_JS +\" \"+ LWPAvailabe_JS +\" \"+ MLAvailabe_JS +\" \"+ COMPAvailabe_JS +\" \"+ FromHomeAvailabe_JS + \" \"+ LeaveType_JS);
    if (dG1==\"\" || dG2==\"\")
    {
      return;
    }
    FromDate_G= dG1;
    ToDate_G=dG2;

    var d = new Date();

    //if(str==\"\")
    {   
        if (window.XMLHttpRequest)
        {
          xmlhttp2=new XMLHttpRequest();
        }
        else
        {
          xmlhttp2=new ActiveXObject(\"Microsoft.XMLHTTP\");
        }           
        xmlhttp2.onreadystatechange=function()
        {                           
            alert(\"Before response from the AJAX\");
          if (xmlhttp2.readyState==4 && xmlhttp2.status==200)
            {                
               document.frmleaveApp.txtLeaveLeangth.value=xmlhttp2.responseText;    

               alert(\"in ajax fileError 2 is \"+err2);
                alert(\"Ajax result is : \"+xmlhttp2.responseText);
                //LeaveLength_JS=xmlhttp2.responseText();
                if(xmlhttp2.responseText==1)
                {       
                    err2=true;
                    alert(\"when ajax result is 1 error 2 is \"+err2);

                    LeaveLength_JS=xmlhttp2.responseText();                     
                }                   
                if(xmlhttp2.responseText==0)
                {
                    err2=false;// allow to apply leave
                    alert(\"when ajax result is 0 error 2 is \"+err2);
                }
                else
                {
                    err2=true;
                    alert(\"when ajax result is other then error 2 is \"+err2);

                    Alert(\"This is developer error. Please Inform to System admin\");
                }                                       
            }
        }           
        xmlhttp2.open(\"GET\",\"http://localhost/MyProject/LeaveLength_Ajax.PHP?_Get_FromDate=\"+FromDate_G+\"&_Get_ToDate=\"+ToDate_G+\"&PLAvailabe_JS=\"+PLAvailabe_JS +\"&CLAvailabe_JS=\"+CLAvailabe_JS +\"&LWPAvailabe_JS=\"+LWPAvailabe_JS+\"&MLAvailabe_JS=\"+MLAvailabe_JS+\"&COMPAvailabe_JS=\"+COMPAvailabe_JS+\"&FromHomeAvailabe_JS=\"+FromHomeAvailabe_JS +\"&LeaveType_JS=\"+LeaveType_JS,true);          
        xmlhttp2.send();
    }       
    alert(\"At the end Error 2 is \"+err2);
}
哪里出错了?我是否需要包括或安装任何支持软件?     

解决方法

        我认为这里的问题与操作系统无关。在Win2003上尝试此操作时,您实际上是在测试该计算机时在该计算机上吗?因为您要查询
localhost
,这意味着您正在查询本地计算机,而不是网络地址。 尝试更改此行:
xmlhttp2.open(\"GET\",\"http://localhost/...\")
对于这样的事情:
xmlhttp2.open(\"GET\",\"http://<server name or IP>/...\")
    ,        在这里工作正常。 您正在使用IE6?     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。