Je regarde le code dans this article sur les méthodes Web et j'ai essayé de l'implémenter. L'article fonctionne comme prévu mais lorsque j'échange le bouton HTML pour un bouton asp: j'obtiens des résultats différents.Méthodes Web fonctionne avec le bouton html mais pas asp: bouton
CODE derrière:
[WebMethod]
public static string GetCurrentDate()
{
return DateTime.Now.ToString();
}
page ASPX:
js:
<script type="text/javascript">
function UpdateTime() {
$get('Label6').innerHTML = PageMethods.GetCurrentDate(OnSucceeded,
OnFailed);
}
function OnSucceeded(result, userContext, methodName) {
$get('Label6').innerHTML = result;
}
function OnFailed(error, userContext, methodName) {
$get('Label6').innerHTML = "An error occured.";
}
</script>
et d'autres balises
<form id="form1" runat="server">
<asp:ScriptManager EnablePageMethods="true"
ID="ScriptManager2" runat="server">
</asp:ScriptManager>
<div id="usingWebMethods">
<asp:Label runat="server"
Text="Using WebMethods"
ID="Label5" />
<br />
<asp:Label
runat="server"
Text="Web Method Update!"
ID="Label6" />
<asp:Button ID="Button3"
runat="server"
Text="Postback Update"
OnClientClick="UpdateTime();"
UseSubmitBehavior="False" />
<input type="button"
id="Button4"
value="Web Method Update"
onclick="UpdateTime();" />
</div>
</form>
J'ai remarqué 2 choses avec le bouton. Le bouton renvoie une erreur et même si l'étiquette change, viewstate n'est pas mis à jour.
Pourquoi ces 2 problèmes se produisent-ils et que puis-je faire pour les résoudre?
Vérifiez la source html de votre page. Assurez-vous que le bouton asp: rend le rendu correct. –