2009-09-22 12 views
13

मिल फिलहाल मैं इसjQuery ajax उदाहरण

$.ajax({ 
    type: "POST", 
    url: "Servicename.asmx/DoSomeCalculation", 
    data: "{param1ID:"+ param1Val+"}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function(msg) { 
     UseReturnedData(msg.d); 
    }, 
    error: function(err) { 
     alert(err.toString()); 
     if (err.status == 200) { 
      ParseResult(err); 
     } 
     else { alert('Error:' + err.responseText + ' Status: ' + err.status); } 
    } 
}); 

की तरह पोस्ट विधि का उपयोग कर रहा हूँ मैं विश्वास है कि अगर मैं पोस्ट के बजाय GET अनुरोध का उपयोग व्यवहार एक तुल्यकालिक अनुरोध किया जा रहा है के लिए बदल जाएगा में सही कर यानी निष्पादन सर्वर से प्रतिक्रिया प्राप्त होने तक प्रतीक्षा करेगा ??

क्या कोई मुझे एक jquery दिखा सकता है उदाहरण के लिए वेब सेवा का वेबमाइम सीधे कॉल कर रहा है?

अद्यतन: नीचे सुझाए गए एसिंक ध्वज का उपयोग करना वास्तव में मुझे ऐसा करने की ज़रूरत है, यह मेरे लिए काम करता है। मैं अभी भी उत्सुक हूं कि इसे जीईटी अनुरोध करने के लिए ऊपर दिए गए कोड पर क्या काम करने की आवश्यकता है। बदलते प्रकार: "प्राप्त करें" वांछित प्रभाव नहीं है!

+0

तुम्हारा क्या मतलब है यह प्रभाव 'वांछित' नहीं है? आप कैसे जानते हैं कि यह अभी भी पोस्ट है? –

उत्तर

11

अगर आप ajax कॉल async होने के लिए या का उपयोग नहीं कर यह निर्णय ले सकते हैं:

$.ajax({ 
    async: false/true, 
    //more options 
}); 
6

अपने पहले बिंदु का उत्तर देने के लिए, नहीं: GET और POST सिंक्रोनस/असिंक्रोनस से स्वतंत्र हैं।

आप इस पर नियंत्रण के लिए बूलियन async विधि का उपयोग कर सकते हैं।

0

देखो यह नमूना हो सकता है आप

xmlhttp.onreadystatechange=function() 
    { 
    if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { 
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText; 
    } 
    } 
    xmlhttp.open("GET","ajax_info.txt",true); 
    xmlhttp.send(); 
1

मदद वहाँ बनाने के लिए एक "async" झंडा है AJAX कॉल तुल्यकालिक या असीमित। आप के रूप में यह परिभाषित कर सकते हैं:

$.ajax({ async: false/true, //rest of code });