<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post/4982/</link>
<title><![CDATA[Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Php/Js/Shell/Go]]></category>
<pubDate>Tue, 14 Feb 2012 10:23:09 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/</guid> 
<description>
<![CDATA[ 
	有时我们在Post的Ajax请求时还是需要一个Get的请求，但Ajax在Jquery封装的Get，Post都是默认异步的，要想同步还是得更加底层，于是有了下面的代码，其实还有更好的方法，<br/>或者在全局设置Ajax属性 <br/><textarea name="code" class="html" rows="15" cols="100">
$.ajaxSetup(&#123; 
&nbsp;&nbsp;async: false 
&nbsp;&nbsp;&#125;); 
</textarea><br/>再用post，get就是同步的了<br/><br/>网上也有，Url及内容贴在最下面：<br/><textarea name="code" class="php" rows="15" cols="100">

$.post(inter,&#123;task:task&#125;,function(d)&#123;
&nbsp;&nbsp;var d = eval(&quot;(&quot;+d+&quot;)&quot;);
&nbsp;&nbsp;if(d.code==0)&#123;
&nbsp;&nbsp;&nbsp;&nbsp;$.ajax(&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type : &quot;get&quot;,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : &quot;/php/UserInfoAll.php&quot;,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data : &quot;random=&quot; + Math.random(),
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;async : false,
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;success : function(data)&#123;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data = eval(&quot;(&quot; + data + &quot;)&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(data.data[5]==6)&#123;//来自地球
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addTab( &#039;来自地球&#039;, &#039;/php/tst/my_Earth.php?tmp=my_Earth&#039;, &#039;new_Gloabal&#039; );
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125; else &#123;//来自火星
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addTab( &#039;来自地球&#039;, &#039;/php/tst/my_Mars.php?tmp=my_Mars&#039;, &#039;new_Gloabal&#039; );
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;
&nbsp;&nbsp;&nbsp;&nbsp;&#125;);
&nbsp;&nbsp;&#125; else &#123;
&nbsp;&nbsp;&nbsp;&nbsp;message(d.msg);
&nbsp;&nbsp;&#125;
&#125;)

</textarea><br/><br/><br/>但同时要注意一个关于ajax返回的问题：<br/><textarea name="code" class="JS" rows="15" cols="100">
&nbsp;&nbsp;&nbsp;&nbsp;var returnFlag=&#039;0&#039;;//是某个职务的人默认：0，不是：下面Ajax赋值1
&nbsp;&nbsp;&nbsp;&nbsp;$.ajax(&#123;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type : &quot;get&quot;,&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url : &quot;/php/cgi/getProjectsOperatorPerson.php&quot;,&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data : &quot;id=&quot;+id+&quot;&amp;random=&quot; + Math.random(),&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;async : false,&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;success : function(data)&#123;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data = eval(&quot;(&quot; + data + &quot;)&quot;);&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(data.code!=1)&#123;//该用户不是想要的权限人员 
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;alert(&quot;温馨提示：某某人才能进行发布确认。&quot;);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;returnFlag = &quot;1&quot;;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#125;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&#125;); 
&nbsp;&nbsp;&nbsp;&nbsp;if(returnFlag == &quot;1&quot;) return false;//在这儿进行return才是退出函数
</textarea><br/>这个ajax不能从if(data.code&nbsp;&nbsp;!= 1)&#123;return false&#125;&nbsp;&nbsp;,是有原因的：那里返回没有用，要的是这个函数的返回值！<br/><br/><br/>以下来自:http://hi.baidu.com/xlianbo1988/blog/item/80a7ed6022b406d6e7113a91.html<br/><br/>由于jquery里默认ajax调用是异步的，所以在一些需要同步执行的场合就会出问题，如我有一个表单，我想在提交它之前对里面的一个文本框进行验证（要提交到服务器上连接数据库验证的），就会出现提交的时候还没等服务器返回验证结果，表单已经被提交了。<br/><br/>解决方法有<br/><br/>1.直接在$.ajax()中设置async: false<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $.ajax(&#123;<br/>type: &quot;POST&quot;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//http请求方式<br/>url: &quot;XMLServer&quot;,&nbsp;&nbsp;&nbsp;&nbsp;//服务器段url地址<br/>data: &quot;username=&quot; + username,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //发送给服务器段的数据<br/>dataType: &quot;html&quot;, //告诉JQuery返回的数据格式<br/>success: callback, //定义交互完成，并且服务器正确返回数据时调用的回调函数<br/>async: false<br/>&#125;);<br/><br/>2.使用$.ajaxSetup(&#123;async: false&#125;);
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63446</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>hxngb8mf &lt;hbcs71@mail114.net&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 16 Feb 2012 18:03:22 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63446</guid> 
<description>
<![CDATA[ 
	支持楼主，长见识了
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63466</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>hxngb5bf &lt;qjme16@mail114.net&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sat, 18 Feb 2012 18:12:42 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63466</guid> 
<description>
<![CDATA[ 
	要看要看。謝謝分享哦
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63472</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>thank480 &lt;ewxl75@mail114.net&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sat, 18 Feb 2012 22:19:57 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63472</guid> 
<description>
<![CDATA[ 
	原来是这样啊
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63475</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>yuanmai43897 &lt;marcellus96lzn6@21cn.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sun, 19 Feb 2012 01:45:35 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63475</guid> 
<description>
<![CDATA[ 
	想想那些就可气总有一天会消失的
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63476</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>yuanmai02096 &lt;marcellus96lzn6@21cn.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sun, 19 Feb 2012 01:46:54 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63476</guid> 
<description>
<![CDATA[ 
	想想那些就可气总有一天会消失的
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63478</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>hxngb6vf &lt;kkpa87@mail114.net&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Sun, 19 Feb 2012 03:17:23 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63478</guid> 
<description>
<![CDATA[ 
	楼主说得好，支持一下
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63565</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>huiercs14565 &lt;karmenp2iwolwf@21cn.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Tue, 21 Feb 2012 18:21:34 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63565</guid> 
<description>
<![CDATA[ 
	一直这么难可能是不能做的事吧
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63579</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>lucy19066 &lt;kbbsb1986@126.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Wed, 22 Feb 2012 06:29:51 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63579</guid> 
<description>
<![CDATA[ 
	让人奔走相告曰须阅读的好帖
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63616</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>lucy53600 &lt;kbbsb1986@126.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 23 Feb 2012 05:03:53 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63616</guid> 
<description>
<![CDATA[ 
	好帖子,声援不了就果断留下文字支持下.............
]]>
</description>
</item><item>
<link>http://jackxiang.com/post/4982/#blogcomment63950</link>
<title><![CDATA[[评论] Jquery实现Ajax同步请求网页的某个Url地址：Post嵌套一个get同步请求]]></title> 
<author>huxiaoguang &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Mon, 28 Jul 2014 08:32:27 +0000</pubDate> 
<guid>http://jackxiang.com/post/4982/#blogcomment63950</guid> 
<description>
<![CDATA[ 
	用鼠标事件不就行了吗，鼠标离开输入框时就验证
]]>
</description>
</item>
</channel>
</rss>