Ajax implementation til Dom scripting og c#
Hej. Jeg har er ved at lave noget via DOM scripting, hvor alt mit markup bliver lavet dynamisk. Jeg har fundet denne tutorial på nettet http://www.codeproject.com/KB/ajax/SimpleAJAXforASPNETwebApp.aspx?print=true. Men kan ikke helt få det til at virkeHar en fil der hedder AjaxObjects.js
function GetXmlHttpObject(handler)
{
var objXmlHttp = null;
if (!window.XMLHttpRequest)
{
// Microsoft
objXmlHttp = GetMSXmlHttp();
if (objXmlHttp != null)
{
objXmlHttp.onreadystatechange = handler;
}
}
else
{
// Mozilla | Netscape | Safari
objXmlHttp = new XMLHttpRequest();
if (objXmlHttp != null)
{
objXmlHttp.onload = handler;
objXmlHttp.onerror = handler;
}
}
return objXmlHttp;
}
function GetMSXmlHttp()
{
var xmlHttp = null;
var clsids = ["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0",
"Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0",
"Msxml2.XMLHTTP.2.6","Microsoft.XMLHTTP.1.0",
"Microsoft.XMLHTTP.1","Microsoft.XMLHTTP"];
for(var i=0; i<clsids.length && xmlHttp == null; i++) {
xmlHttp = CreateXmlHttp(clsids[i]);
}
return xmlHttp;
}
function CreateXmlHttp(clsid) {
var xmlHttp = null;
try {
xmlHttp = new ActiveXObject(clsid);
lastclsid = clsid;
return xmlHttp;
}
catch(e) {}
}
En CheckLogin.js
var xmlHttp;
window.onload = MakeEvents;
function MakeEvents()
{
var btnLogin = document.getElementById("btnLogin");
btnLogin.onclick = btnLoginEvent;
function btnLoginEvent()
{
SendXmlHttpRequest("Hej","login.aspx.cs");
}
}
function SendXmlHttpRequest(xmlhttp, url)
{
xmlhttp.open('GET', url, true);
xmlhttp.send(null);
}
function ExecuteCall(url)
{
try
{
xmlHttp = GetXmlHttpObject(CallbackMethod);
SendXmlHttpRequest(xmlHttp, url);
}
catch(e){}
}
function CallbackMethod()
{
try
{
if (xmlHttp.readyState == 4 || xmlHttp.readyState == 'complete')
{
var response = xmlHttp.responseText;
if (response.length > 0)
{
alert(response);
}
}
}
catch(e){}
}
Og min login.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
lblMessage.Text = "Test";
ClientScript.RegisterStartupScript(this.GetType(), "ajaxMethod", String.Format("<script>ExecuteCall('{0}');</script>", url));
}
Men der er noget galt, og kan umiddelbart ikke tyde det eksempel fra the codeproject ordenligt. Hvad er der galt? Kan jeg godt bruge updatepanel og scriptmanager, når jeg skal lave alt markup dynamisk?