Avatar billede lauge Nybegynder
18. juni 2002 - 16:20 Der er 4 kommentarer og
1 løsning

functions i .htc filer???

Hejsa der,

Så er jeg tilbage med endnu et tumpe spørgsmål! :-)

Jeg fandt dette her på Microsoft:

http://msdn.microsoft.com/library/en-us/dndude/html/qualsort.htm

Det er jo vildt fedt at man kan sortere i en tabel uden at skulle over i databasen.

Mit spørgsmål er så:

Hvordan kan jeg kalde de JS funktioner som bliver lagt i .htc filen? Således at funktionen bliver udført i "MyTable" tabellen.

Altså jeg ønsker at placere et link et vilkårligt sted på siden(uden for tabellen). Ex:
<a href="#" onClick="insertionSort(t, iRowEnd, fReverse, iColumn);">Store patter :-)</a>

Således at jeg fra et link af kan ændre sorteringen i tabelen.

Jeg bliver en MEGET MEGET glad mand hvis en eller anden kan hjælpe og selvfølgelig får det til at virke !!!! :-)

Høj sommer her fra...
Lauge
Avatar billede lauge Nybegynder
18. juni 2002 - 16:24 #1
for en god ordens skyld så kan der læses mere her:
http://msdn.microsoft.com/library/en-us/dndude/html/dude07232001.asp?frame=true
Avatar billede uffehellum Nybegynder
19. juni 2002 - 00:18 #2
Jeg tror, du skal kopiere sorteringsalgoritmen, for at kunne referere til den fra selve siden.  Jeg har sat et id på tabellen, så den er nemmere at finde.

MVH Uffe.

<script>
function f(col, reverse) {
    alert('a');
    var t = document.all.idtable.tBodies[0];
    alert(t.rows.length);
    insertionSort(t, t.rows.length - 1, reverse, col);
}

function insertionSort(t, iRowEnd, fReverse, iColumn) {
    var iRowInsertRow, iRowWalkRow, current, insert;
    for (iRowInsert = 1; iRowInsert <= iRowEnd ; iRowInsert++) {
        if (iColumn) {   
            if (typeof(t.children[iRowInsert].children[iColumn]) != "undefined") {
                      textRowInsert = t.children[iRowInsert].children[iColumn].innerText;
            } else {
                textRowInsert = "";
            }
        } else {
            textRowInsert = t.children[iRowInsert].innerText;
        }
        for (iRowWalk = 0; iRowWalk <= iRowInsert; iRowWalk++) {
            if (iColumn) {
                if(typeof(t.children[iRowWalk].children[iColumn]) != "undefined")
                    textRowCurrent = t.children[iRowWalk].children[iColumn].innerText;
                else
                    textRowCurrent = "";
            } else {
                textRowCurrent = t.children[iRowWalk].innerText;
            }
            current = textRowCurrent;
            insert = textRowInsert;
            if (!isNaN(current) ||  !isNaN(insert)) {
                current= eval(current);
                insert= eval(insert);
            } else {
                current    = current.toLowerCase();
                insert    = insert.toLowerCase();
            }
            if (((!fReverse && insert < current) || (fReverse && insert > current))
                && (iRowInsert != iRowWalk)) {
                eRowInsert = t.children[iRowInsert];
                eRowWalk = t.children[iRowWalk];
                t.insertBefore(eRowInsert, eRowWalk);
                iRowWalk = iRowInsert; // done
            } // if
        } // for iRowWalk
    } // for iRowInsert
} // insertionSort

</script>
<input
    type="button"
    value="sorter efternavn aftagende"
    onclick="f(1, true)"
/>
<TABLE id="idtable" style="behavior:url(sort.htc); BORDER: black 1px solid; WIDTH: 99%; background-color:#eeeecc;"
...
Avatar billede uffehellum Nybegynder
21. juni 2002 - 10:01 #3
Jeg ved godt, det kan virke klodset, at have koden to steder, men det virker fint, bare at have en sorteringsalgoritme som vist ovenfor.
Avatar billede lauge Nybegynder
21. juni 2002 - 10:55 #4
fint - jeg ser lige på det en gang i næste uge.
Avatar billede lauge Nybegynder
28. juni 2002 - 13:40 #5
Du er sq kongen!
Tak det er cool!
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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