این کد رو تست کردم کار میکنه:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<script type="text/javascript">
function chkUser() {
if(window.XMLHttpRequest) {
xmlhttp= new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState ==4 && xmlhttp.status == 200) {
document.getElementById('ifshow').innerHTML = xmlhttp.responseText;
}
}
xmlhttp.open('GET', '2.php', true);
xmlhttp.send();
alert("best");
}
function chngpg(index)
{
if(index==1)
{
chkUser();
}
else
{
alert(index);
}
}
</script>
</head>
<body><center>
<a href="javascript:chngpg(1);" onClick="">Go TO</a><br>
<div id="ifshow" style="width:800px; height:700px;border:1px solid #000;"></div></center>
</body>
</html>
یه اشکال فکر کنم این بود که href تگ a خالی بود.
اشکال دیگه فکر میکنم اینه که شما میخوای از یه دامین دیگه محتویات بگیری با ایجکس، که این فکر میکنم به دلیل مسائل امنیتی جلوش گرفته شده. بهش میگن cross domain ajax یا یه همچین چیزی. اگر واقعا میخوای چنین کاری بکنی ترفندهایی داره ظاهرا، اما نمیدونم میشه کل محتویات یک سایت دیگر رو اینطوری بگیری یا نه. شاید اصلا نشه.
اگر میخوای کل یک سایت رو نمایش بدی، چرا اون رو در یک iframe نمیذاری؟
ضمنا یه راه دیگه هم اینه که محتویات اون سایت رو سمت سرور با سوکت یا cURL بگیری و بعد قسمتهاییش رو که میخوای بذاری توی سورس HTML خودت. اما این کار شاید در خیلی کشورها غیرقانونی باشه ها!