<input id="B1" type="button" value="开始获取" onclick="hq()">
<SCRIPT language=javascript type=text/javascript>
function hq(){
document.getElementById("B1").disabled =true;
document.getElementById("B1").value ="获取中.." var url="http://123.com/123/123.htm";
var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
var ajx1=xmlHttp.responseText; document.getElementById("B1").disabled =true;
document.getElementById("B1").value ="获取结束"
}
</script>我的意图是当点击“开始获取”按钮时,该按钮先变成“获取中..”;
然后开始执行ajax,执行完后,该按钮的标题改为“获取结束”。可是由于优先级问题,程序并没有按照我的意图执行。程序先执行ajax,然后执行document.getElementById("B1").value ="获取中.."。请问应该怎样修改该程序,才能使程序先执行document.getElementById("B1").value ="获取中..",然后执行ajax?
document.getElementById("B1").value ="获取结束"
这句不一定会是在AJAX之后,,也许会在之前
<input id="B1" type="button" value="开始获取" onmousedown="hq(0);" onmouseup="hq(1);">
<SCRIPT language=javascript type=text/javascript>
function hq(n){
if(n==0){
document.getElementById("B1").disabled =true;
document.getElementById("B1").value ="获取中.."
return;
}
var url="http://123.com/123/123.htm";
var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
xmlHttp.open("GET", url, false);
xmlHttp.send(null);
var ajx1=xmlHttp.responseText; document.getElementById("B1").disabled =true;
document.getElementById("B1").value ="获取结束"
}
</script>
mozilla因为没有bom(新版ff4好像有了),所以……换浏览器测试一下看看不知道这个认知现在是否不合时代了,呵呵