PDA

View Full Version : مشكل در كد java script



mehdi4467
سه شنبه 16 آذر 1389, 12:44 عصر
سلام
من كدهاي زير را براي استفاده از java در php نوشته ام. در مرورگر IE كار مي كند ولي در مرورگرهاي ديگر كار نمي كند.


<script language="javascript" type="text/javascript">

var pageurl="getname.php?param=";
var http = getHttp();

function Answer()
{
if(http.readystate == 4)
{
r = http.responseText;
document.getElementById("tfname").value = r;
}
}

function SendCodeAndReceiveName()
{
var code = document.getElementById("tfcode").value;
http.open("GET", pageurl+code,true);
http.onreadystatechange = Answer;
http.send(null);

}

function getHttp()
{
var xmlhttp;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
if(typeof XMLHttpRequest != "undefined")
{
xmlhttp = new XMLHttpRequest();

}
}
}
return xmlhttp;
}


</script>
كد هاي زير را هم در فايل getname.php نوشته ام.


<?php

$c = $_GET["param"];
if($c == "0311")
{
echo "Esfahan";
}
?>
من فكر مي كنم ايراد مربوط مي شود به خط


if(typeof XMLHttpRequest != "undefined")
{
xmlhttp = new XMLHttpRequest();

}
در واقع در اين خط مرورگرهايي مثل فاير فاكس و ... را شناسايي مي كند.

hossin.esm
سه شنبه 16 آذر 1389, 19:18 عصر
کد را به صورت زیر بنویس جواب میده


<script language="javascript" type="text/javascript">
var pageurl="getname.php?param=";
function SendCodeAndReceiveName()
{
var xmlhttp;
try
{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e)
{
if(typeof XMLHttpRequest != "undefined")
{
xmlhttp = new XMLHttpRequest();

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

document.getElementById("tfname").value =xmlhttp.responseText;
}
};
var code =pageurl+document.getElementById("tfcode").value;
xmlhttp.open("GET", code,true);
xmlhttp.send();

}

</script>

mehdi4467
سه شنبه 16 آذر 1389, 20:03 عصر
سلام
با این کد هم کار نکرد

hossin.esm
سه شنبه 16 آذر 1389, 20:18 عصر
در IE یا در مرورگرهای دیگر.
برای من در همه مرورگرها کار میکنه.
کد که بالا گذاشتید کامل نیست .

mehdi4467
پنج شنبه 18 آذر 1389, 02:01 صبح
در IE یا در مرورگرهای دیگر.
برای من در همه مرورگرها کار میکنه.
کد که بالا گذاشتید کامل نیست .

منظورتان از کامل نبودن کدهای چیه؟ من با همین کدها هیچ مشکلی در IE ندارم ولی در فایرفاکس کار نمی کند.
نمی دانم دلیل چیه.

hossin.esm
پنج شنبه 18 آذر 1389, 08:54 صبح
کد شما در فایر فاکس جواب نمیده .ولی کد من در همه مرورگر ها جواب داد .
منظورم کدهای html بود

mehdi4467
جمعه 19 آذر 1389, 15:02 عصر
ایراد رو پیدا کردن. خیلی ایراد جالبی بود.
در خط


if(http.readystate == 4)

باید s اول state رو باید با حروف بزرگ نوشت.
ظاهرا firefox به این موضوع حساسه ولی IE نه.