JS中隱藏的坑

直接上代碼:

    //校驗數據是否導入
    var inputData = {};
    var baseInfo=false;
    inputData.PROJECT_ID=$("#PROJECT_ID").val();
    ACWS.ajax('zjmcpm/qyw/design/service/QywDesignBaseInfo/CheckAllBaseInfo', inputData, function(jso) {
        if (jso.RESULT==true) {
            return false//baseInfo=true
        }
    },{async: false});
    if(!baseInfo){
        _alert("小區資源信息不能爲空!");
        return false;
    }

上面代碼是對ajax請求進行封裝的同步請求,按道理return false之後是不會往下面執行。但是其實這個ACWS.ajax這個本身就是一個function方法,然後返回的話就應該是返回這個ACWS的這個而不是整個所以這個return false不能作用於全部。這個return false是終止當前函數或者方法。一般在java裏面就一個方法所以return沒有錯,但是JS裏面有一些封裝好的function方法,可能沒有這麼好看的出來。這個時候你要小心處理return false。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章