首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

jquery 的实施顺序

2012-08-25 
jquery 的执行顺序HTML code script typetext/javascript$(document).ready(function(){$(#apple).

jquery 的执行顺序

HTML code
 <script type="text/javascript">  $(document).ready(function(){      $("#apple").click(function(event){      var s=$("#ppp").val();      if(s!=''){        $.post("UserVerify?rand="+Math.rand,{a:s},function(data){          $("#maple").html(data);       });       alert( $("#maple").html());       event.preventDefault();      //return false;      }else {      alert("请输入");      event.preventDefault();      }      });      });  </script>  </head>  <body>       <form action="shiyan" method="post">     <input type="text" id="ppp">     <span id="maple"></span>     <input type="submit" value="点击" id="apple">     </form>  </body></html>

jquery 里post 方法提交的servlet 只返回一个字符串,为什么我第一次点击弹alert是空啊,求解释,再点击一次就弹出servlet的返回的字符串。

[解决办法]
ajax是异步执行的啊,ajax没返回就已经执行 alert( $("#maple").html());这句了,要获得maple的内容,要放到回调函数里面,或者将ajax设置为同步的

JScript code
 $(document).ready(function(){      $("#apple").click(function(event){      var s=$("#ppp").val();      if(s!=''){        $.post("UserVerify?rand="+Math.rand,{a:s},function(data){          $("#maple").html(data);          alert( $("#maple").html());///////////       });       //alert( $("#maple").html());//ajax还没有返回都已经执行这句了,当然为空了,第二次的话已经有第一次的结果了,输出当然不为空       event.preventDefault();      //return false;      }else {      alert("请输入");      event.preventDefault();      }      });      }); 

热点排行