Avatar billede horus Nybegynder
22. januar 2006 - 08:52 Der er 3 kommentarer og
1 løsning

Simpelt script uden postback

Ved ikke lige om at det er den mest sigende overskrift, men her er hvad jeg forsøger.

Jeg har 4 textfelter.

2 af felterne indeholder et tal hver.

I det tredje skal man indtaste endnu et tal - og ved "Exit" skal det fjerde felt vise resultatet af en beregning baseret på de 3 forrige bokse.

Dette kan jeg også snildt klare - men ved hjælp af OnTextChanged og AutoPostBack=True....

MEN - så skal formularen jo omkring serveren igen og det virker lidt tåbeligt set i lyset af at det er en simple "gange" beregning, som vil snildt burde kunne klares, "client side" - eller ?

Kan det lade sig gøre client-side så man undgår postback ?

Vedhæft gerne et eksempel herpå....

Takker

Horus
Avatar billede dr_chaos Nybegynder
22. januar 2006 - 10:17 #1
det kan du på et par måder.
1. Lav det hele i javascript.
2. Brug ajax frameworket fra atlas.asp.net .
Det er stadigvæk i beta men virker ret godt.
Avatar billede snepnet Nybegynder
22. januar 2006 - 11:26 #2
Bruger du version 1.x eller 2.0?
det er ikke ret meget der skal til for at lave det således at siden foretager kald til serveren - uden at siden blinker (hverken på 1.x eller 2.0).
men ellers .... hvis det bare er lidt + og minus du skal lave er, chaos' 1'er jo fint.
mvh
Avatar billede snepnet Nybegynder
22. januar 2006 - 11:39 #3
et eksempel på sådan som man "altid" har kunnet gøre det:

<SCRIPT language="JavaScript" type="text/javascript">
    function validateText(userid)
    {
        var targetUrl = "DataPage.aspx?text="+userid;
       
        window.status="Forsøger opslag på " + targetUrl;
       
        var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");                                   
        xmlHttp.open( "POST", targetUrl, false);
        xmlHttp.send();       
       
        var res = xmlHttp.responseText;
        if (res == 'valid')
            document.getElementById('txtTextToValidate').className = "ok";
        else
            document.getElementById('txtTextToValidate').className = "error";
       
        window.status="Opslag udført, res : " + res;
    }
</SCRIPT>

scriptet sender en request til en url, og kigger på den respons der kommer tilbage... og udfra det gøres der så et eller andet på siden.
(her markeres en tekstboks som fejlbehæftet med lidt styles)

et script som det kan du så udføre på onblur ell. på en tekstboks (eller bare indsætte den knap)
mvh
Avatar billede horus Nybegynder
04. september 2006 - 09:18 #4
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