2012-06-18 22 views
0

我有一個jQuery函數在我的劇本網頁獲得的回發第一後Ajax調用被稱爲

function test(){ 

$.ajax({ 
            url: '/Customer/test' + '?clientId=' + val, 

            success: function (available) { 
             alert(available + 'success i am in the ajax'); 
             if (available == 1) { 
              alert('no postback'); 
              return false; 
             } 
             else if (available == 2) { 
              alert('no postback'); 
              return false; 
             } 
             else { 
              alert('Ok,postback'); 
              return true; 
             } 

            } 
           }); 

}

,我叫它

按鈕onclick="test();"

問題在於頁面首先獲取回傳,此後纔會調用ajax調用。 但首先Ajax調用應該是posback

回答

3

使用異步:假在你的Ajax調用

嘗試下面的代碼,

var output = $.ajax({ 
        type: "POST",         
        url: "/Customer/test", 
        async: false, 
        data: "clientId="+val         
       });  
if (output == 1) { 
        alert('no postback'); 
        return false; 
        } 
else if (output == 2) { 
     alert('no postback'); 
     return false; 
    } 
else { 
    alert('Ok,postback'); 
    return true; 
    }         } 
+0

是的,這是異步問題:false, Thanks @hRavl。 – Himanshu

+0

你好,你可以讓這個答案正確:) –

+0

我做了這個正確的再次感謝:) – Himanshu

0

嘗試的onclick更改爲此後調用:

onclick="javascript:return test();" 

然後在它返回false。

+0

還是一樣沒有什麼變化 – Himanshu

+0

您可以發佈所有的代碼,而不是星星點點。 –

+0

這就是我在這裏發佈的所有代碼的任何方式pasha感謝您的幫助,現在完成 – Himanshu