我有一个页面通过Ajax加载其他页面(想想框架,除了没有框架).
显然这些页面都可以独立调用,所以我想检测它们是否通过Ajax调用,如果没有,则重定向到主Ajax页面.
页面是PHP页面,所以我也可以访问它.
指数:
goto = "StandalonePrograms.PHP"; var clear = "<br style='clear:both;'>" if(goto != ''){ $.ajax({ url: goto,context: document.body,success: function(data){ $('#mainwindow').html(data + clear); $('#mainwindow').find("script").each(function(i){ eval($(this).text()); }); } }); }
使用XMLHttpRequest对象发出请求时,现代浏览器会添加以下请求标头:
X-Requested-With: XMLHttpRequest
在PHP中,使用以下命令检查此标头是否存在:
$_SERVER['HTTP_X_REQUESTED_WITH']