<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>js返回测试</title>
<script language="javascript" type="text/javascript">
function TempSave() {
var winTag=false;
var xmlHttp;
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}
var url = "return.asp?t=" + Math.random();
xmlHttp.open("GET", url, true);
xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xmlHttp.onreadystatechange = getMes;
xmlHttp.send(null);
function getMes() {
if (xmlHttp.readyState == 4) {
if (xmlHttp.status == 200) {
var mes = xmlHttp.responseText;
if (mes == "1") {
winTag=true;
}
else {
winTag=false;
}
}
}
}
}
</script>
</head><body>
<a href="index.html" target="_blank" onclick="return TempSave();"><img border="0" alt="" src="http://img.uhuibao.com/ver04/view_btn.png" /></a>
</body>
</html>
代码如上,为了测试return.asp固定返回1,。
我想做的是,点击按钮,调用ajax保存,然后保存成功返回1,判断是1的话,才弹出新窗口index.html
但是我在测试中想使用window.open,问题是很多浏览器会阻止弹出这样的窗口。
请问有什么更好的解决办法。
<a href="http://www.csdn.com" id="link" >text</a>if(document.all) {
document.getElementById("link").click();
}
else {
var evt = document.createEvent("MouseEvents");
evt.initEvent("click", true, true);
document.getElementById("link").dispatchEvent(evt);
}