<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>نوشته های محمد رضا</title><link>https://virgool.ir/feed/@Ordibeheshti</link><description>گاه نوشته های یک برنامه نویس که دوست داره کارافرین بشه...</description><language>fa</language><pubDate>2026-11-10 22:18:25</pubDate><image><url>https://virgool.ir/images/default-avatar.jpg</url><title>محمد رضا</title><link>https://virgool.ir/@Ordibeheshti</link></image><item><title>اجرای یک فانکشن بعد از تکمیل فانکشن قبلی در Javascript به روش CallBack</title><link>https://virgool.ir/@Ordibeheshti/اجرای-یک-فانکشن-بعد-از-تکمیل-فانکشن-قبلی-در-javascript-به-روش-callback-cw7mkaptenhl</link><description>در این مثال دو تا فانکشن داریم که به صورت ajax از وب سرویس اطلاعاتی رو دریافت می کنند و در صورتی که هر کدام از فانکشن ها اطلاعات رو از سرور دریافت کردند و مشکلی نداشتند، فانکشن بعدی رو صدا کنند.فانکشن اصلیی برنامه:می خواهیم اگر  خروجی فانکشنFun1 صحیح بود فانکشن Fun2 اجرا بشود.function Main() {&#xA;      Fun1(function () {&#xA;            Fun2();&#xA;        });&#xA; }فانکشن Fun1:فانکشن Fun1 یک پارامتر با نام CallBack با خودش دارد. توی خط 5 سرویس مربوطه صدا زده می شود ( فانکشن CallWebService به صورت ajax وب سرویس مربوطه رو صدا می زند). در صورتی که خروجی مورد نظر صحیح باشد، CallBack صدا زده می شد. و برنامه به فانکشن Main برمی گردد و Fun2 رو صدا می زند.function Fun1(callback) {&#xA;            var url = &#34;your url&#34;&#xA;            var parameters = &#39;&#39;;&#xA;            try {&#xA;                var result = CallWebService(url, parameters);&#xA;                if (result == &#39;success&#39;) &#xA;                    callback();&#xA;                else &#xA;                    alert(&#34;process faild&#34;);&#xA;            } catch (e) {&#xA;                alert(&#34;error happend&#34;);&#xA;            }&#xA;        }فانکشن Fun2:فانکشن Fun2 مثل یک فانکشن معمولی نوشته می شود و با توجه به خروجی سرویس، پیام مناسب را نمایش می دهد.function Fun2() {&#xA;            var url = &#34;your url&#34;&#xA;            var parameters = &#39;&#39;;&#xA;            try {&#xA;                var result = CallWebService(url, parameters);&#xA;                if (result == &#39;success&#39;)&#xA;                    alert(&#34;process success&#34;);&#xA;                else&#xA;                    alert(&#34;process faild&#34;);&#xA;            } catch (e) {&#xA;                alert(&#34;error happend&#34;);&#xA;            }&#xA;        }&#xA;فانکشن CallWebService یک فانکشن ساده می باشد که سرویس مورد نظر را به صورت ajax صدا می زند.function CallWebService(WebserviceUrl, Parameter) {&#xA;           var rst = null;&#xA;            try {&#xA;                var options = {&#xA;                    type: &#34;POST&#34;,&#xA;                    url: WebserviceUrl,&#xA;                    data: Parameter,&#xA;                    contentType: &#34;application/json; charset=utf-8&#34;,&#xA;                    dataType: &#34;json&#34;,&#xA;                    async: false,&#xA;                   beforeSend: function () {&#xA;                        WaiterShow();&#xA;                    },&#xA;                    success: function (response) {&#xA;                        rst = response.d;&#xA;                    },&#xA;                    error: function (errAjax) {&#xA;                        alert(&#39;Error in CallWebService: &#39; + errAjax.responseText);&#xA;                        rst = null;&#xA;                    },&#xA;                    complete: function (data) {&#xA;                        WaiterHide();&#xA;                    }&#xA;                };&#xA;                $.ajax(options);&#xA;            }&#xA;            catch (err) {&#xA;                alert(&#39;Error in CallWebService: &#39; + err.message);&#xA;                rst = null;&#xA;            }&#xA;            return (rst);&#xA;        }امیدوارم مفید باشد.با سپاس</description><category>محمد رضا</category><author>محمد رضا</author><pubDate>Tue, 01 Feb 2022 15:06:46 +0330</pubDate></item></channel></rss>