Bonjour,
J'ai un petit problème concernant un appel d'un webservice en code-behind qui l'appelle lui-même l'appelle en JS, je m'explique :
J'ai une page qui possède un UpdatePanel qui contient un UserControl, il n'y a pas de trigger sur cet UpdatePanel :
Dans mon UserControl, j'ai un autre UpdatePanel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <asp:UpdatePanel runat="server" ChildrenAsTriggers="true" ID="upd" UpdateMode="Conditional"> [...] </asp:UpdatePanel>
J'ai évidemment un trigger mais c'est pour une autre action qui marche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <asp:UpdatePanel runat="server" ID="UpdatePanelAccountingEntries" UpdateMode="Conditional" ChildrenAsTriggers="true"> [...] </asp:UpdatePanel>
Ensuite dans le code-behind de mon UserControl, je fais appel à mon webService comme celà :
La fonction JS est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ((TextBox)controlCustomerNumber).Attributes["onblur"] = string.Format("getBusinessNameByCustomerNumber('{0}', '{1}', '{2}', '{3}', this);", controlCustomerName.ClientID, LabelErrorCustomerNameValue.ClientID, _table.Rows[cptRows].Cells[0].ClientID, _table.Rows.Count - 1);
Mon WebService est le suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 function getBusinessNameByCustomerNumber(elemCustomerName, elemLabelErrorCustomerNameValue, elemNumberLine, countTableRows, elemCustomerNumber) { var customerNumberSave = elemCustomerNumber.value.length > 0 ? parseInt(elemCustomerNumber.value) : null; if (customerNumberSave != null) { // Appel du webService Legal.Rock.View.WebSite.WebServices.VentilationCollection.GetCustomerNameByCustomerCode(customerNumberSave, OnSaveVentilationSucceeded, {customerElem : $get(elemCustomerName), error : $get(elemLabelErrorCustomerNameValue), line : $get(elemNumberLine), number : customerNumberSave, rowsNumber: countTableRows }); } }
Lorsque je ne mets pas d'UpdatePanel au niveau de ma page, tout marche nickel.Si j'en mets un, l'appel au WebService ne marche pas du tout, quelqu'un saurait-il d'où pourrait venir le problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 [WebMethod] public string GetCustomerNameByCustomerCode(int customerCode) { CustomerVO customer = CustomerDelegate.GetLastCustomerByCustomerNumber(customerCode); if (customer != null) return customer.BusinessName; return "Inconnu"; }
Merci d'avance
Partager