<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$("#bt").click(function(){
var s=checkcode(5);
alert(s);
})
function checkcode(i){
var returnValue;
var options={
type:"get",
url:"test.php",
async:true,
dataType:"html",
success:function(result){
if(result==123)
returnValue=1;
}
}
$.ajax(options);
return returnValue;
}
})
</script>
<input type="button" id="bt"/>
其中,test.php的代码如下:
<?php
echo 123;
?>
默认情况下,使用ajax的方式是异步的,所以说,在jquery向test.php发出连接请求时,会同时执行return returnValue这条语句,因此,返回的是空,而当async的值设置为false后,会使用同步的方式,在等待其完成请求,执行success方法后才会接着执行return returnValue这条语句,因此,这个时候能够得到返回值。