[xml/java] node navigatie probleem

Pagina: 1
Acties:

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 25-08 17:13

Altaphista

1. check manual, 2. ask

Topicstarter
ik stuit op een probleem bij het schuiven van nodes. Op het moment heb ik het omhoog schuiven, deleten en inserten van een node binnen een Document werkend, maar wil ik een node naar beneden schuiven, dan moet ik soms de functie wel 2 keer aanroepen. Is dit een bekend probleem? En/of heeft iemand hier dezelfde ervaringen mee?

(mijn code kan ik hier ook wel plakken, maar eerst wil ik graag weten of het probleem bekend is.)

Je gaat het pas zien als je het doorhebt.


Verwijderd

(mijn code kan ik hier ook wel plakken, maar eerst wil ik graag weten of het probleem bekend is.)
antw:
nee

gevolg:
Code graag
:P

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 25-08 17:13

Altaphista

1. check manual, 2. ask

Topicstarter
hmm jammer :)
gevolg:
Code graag
:P
OK:

mijn code:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/*
voorbeeld van XML-file:
<items>
  <item id="1">
   <subitem>value 1 here</subitem>
  </item>
  <item id="2">
   <subitem>value 2 here</subitem>
  </item>
  <item id="3">
   <subitem>value 3 here</subitem>
  </item>
</items>
*/

public boolean moveNodeDown(int node_id) {
        //schuift Node met id=node_id 1 omlaag, wisselt deze ahw met onderstaande Node op zelfde niveau.
        boolean gelukt = false;
        try {
            Node nN = getNode(node_id);     
            if (nN != null) {               
                Node nNext = nN.getNextSibling();
                Node parentNode = nN.getParentNode();
                if (nNext != null) {
                    Node nextNext = nNext.getNextSibling();
                    
                    if (nextNext == null) {
                        //verwijderen en achteraan plakken
                        Node tmp = parentNode.removeChild(nN);
                        parentNode.appendChild(nN);
                        gelukt = true;
                    }
                    else {
                        //verwijderen en voor volgende plakken
                        Node tmp = parentNode.removeChild(nN);
                        parentNode.insertBefore(tmp,nextNext); //insert first before existing second
                        gelukt = true;
                    }                   
                }               
                return gelukt;
            }
            else {              
                return gelukt;
            }
        }
        catch (Exception e) {System.out.println("Error @ moveNodeDown: "+e);return gelukt;}         
    }

Je gaat het pas zien als je het doorhebt.


  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 25-08 17:13

Altaphista

1. check manual, 2. ask

Topicstarter
Is het 'probleem' onbekend, en weet echt niemand hiervan?

Je gaat het pas zien als je het doorhebt.


  • whoami
  • Registratie: December 2000
  • Laatst online: 22:40
Je zegt dat je de functie dan soms 2x moet aanroepen.
Misschien een idee om je code eens te debuggen en kijken wat hij in het 1ste geval niet doet wat hij in het 2de geval wel doet....

https://fgheysels.github.io/


  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 25-08 17:13

Altaphista

1. check manual, 2. ask

Topicstarter
whoami schreef op 07 January 2003 @ 09:57:
Je zegt dat je de functie dan soms 2x moet aanroepen.
Misschien een idee om je code eens te debuggen en kijken wat hij in het 1ste geval niet doet wat hij in het 2de geval wel doet....
Dat is het juist, ik heb mijn code al vol gehad met System.out's, maar beide keren gebeurt exact hetzelfde.
Mijn functie returnt ook true, zo van, 'het is gelukt, hoor.'

Ik heb ook al gekeken of het aan mijn caching ligt van i-eksplore, maar via Mozilla gebeurt het ook.

Je gaat het pas zien als je het doorhebt.

Pagina: 1