2016-03-29 5 views
0

Ich habe unter Code, der gut funktioniert. Ich muss zwei verschiedene serverseitige Funktionen ausführen (die nicht gleichzeitig ausgeführt werden können, habe ich differenziert).ASP.NET Button klicken Ereignis in Javascript mit JSON

  1. Default.aspx/addcart
  2. btnUpdate Click-Ereignis

Mein Problem ist Warnfeld & Laden div (#overlay) kommt vor btnUpdate Click-Ereignis Abschluss versteckt. Ich möchte keine Warnmeldung Box & wollen laden div bis Click Event nicht abgeschlossen angezeigt werden.

$("#overlay").show(); 
$.ajax({ 
    type: "POST", 
    url: "Default.aspx/AddCart", 
    data: "{id: " + selectValue + ", qty:" + qq + "}", 
    contentType: "application/json; charset=utf-8", 
    dataType: "json", 
    success: function (r) { 
     document.getElementById("<%= btnUpdate.ClientID %>").click(); 
     alert("Added to Shopping Cart !"); 
     $("#overlay").hide(); 
    }, 
    error: function (r) { 
     alert(r.responseText); 
     $("#overlay").hide(); 
    }, 
    failure: function (r) { 
     alert(r.responseText); 
     $("#overlay").hide(); 
    } 
}); 
+0

Warum rufen Sie nicht Update-Klick mit Ajax? – Imad

+0

Dieses Click-Ereignis aktualisiert UpdatePanel von Header User Control von Default.aspx & ich kann dies nicht mit AJAX/WebMethod tun. – Yusuf

+0

müssen Sie das Click-Ereignis auch mit Ajax aufrufen. Es geht nicht anders. – yogihosting

Antwort

0

In Sie Button klicken Ereignis, fügen Sie diese Zeile zuletzt.

string script = "alert('Added to Shopping Cart !'); $('#overlay').hide();" 
ScriptManager.RegisterStartupScript(Page, typeof(Page), "sc", script, true); 

und entfernen Sie sie aus jquery, nachdem Klick aufgerufen wird.