Premetto ho appena iniziato a studiare asp.net e in particolare ajax che mi sta facendo impazzire.
Il problema è questo :
ho un Web Service che ha un [WebMethod] HelloWorld che ritorna una string "HELLO WORLD"
( molto originale )
<head runat="server">
<title></title>
<script type="text/javascript">
function pageLoad() {
GetHelloWorld()
}
// This function calls the Web service method
// passing the method name.
function GetHelloWorld() {
AjaxWebApplication.WebService1.HelloWorld(SucceededCallback);
}
function SucceededCallback(result, eventArgs) {
// Page element to display feedback.
var RsltElem = document.getElementById("Label1");
RsltElem.innerHTML = result;
}
if (typeof (Sys) !== "undefined") Sys.Application.notifyScriptLoaded();
</script>
</head>
La prima volta che avvio il programma , il metodo HelloWorld del web service viene rchiamato sul PageLoad() e cioè quando la lagina viene caricata per la prima volta , e il messaggio "HelloWorl!!" viene visulaizzato in una label : Label1 che
ovviamente e un <ASP:Label/> è la cosa funziona.
Il problema sorge quando richiamo il metodo GetHelloWorld() dall' onClick di un pulsante
Button1 nel codiche che segue:
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server" >
<Services>
<asp:ServiceReference path="WebService1.asmx" />
</Services>
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<button id="Button1" onclick="GetTime(); return false; ">Server Time</button>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
</div>
</form>
</body>
L'errore è : Errore di run-time di Microsoft JScript: Previsto oggetto e mi indica la linea di errore
su <button id="Button1" onclick="GetTime(); return false; ">Server Time</button>
Qualcuno mi potrebbe dare un'udea ?