Avatar billede alex_sleiborg Nybegynder
10. december 2007 - 23:30 Der er 1 løsning

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 virke

Har 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?
Avatar billede alex_sleiborg Nybegynder
04. februar 2008 - 16:50 #1
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester