volgorde listbox veranderen dmv drag n drop

Pagina: 1
Acties:
  • 95 views sinds 30-01-2008

  • MrQcue
  • Registratie: Januari 2005
  • Laatst online: 01-05 23:43
Ik ben op zoek naar een listbox waarbij de gebruiker mbv drag n drop de volgorde van de items kan veranderen.

Ik wil het toepassen voor het kunnen veranderen van de volgorde van categorieen in een cms systeem.

Ik heb heel wat af ge-googled en 1 heel mooi resultaat gevonden:

http://www.scbr.com/docs/products/dhtmlxTree/

Ik vind het een beetje overkill.

Vandaar dat ik vraag of iemand een wat simpelere JS-oplossingen weet die gebruikt maakt van een basic multiple-listbox en alleen items van 1 niveau laat zien?

[EDIT]
Daarnaast is het bij dit script niet makkelijk om de volgorde op hetzelfde niveau aan te passen. Vandaar dat ik op zoek ben naar een alternatief

[ Voor 12% gewijzigd door MrQcue op 31-05-2005 19:53 ]


  • r0bert
  • Registratie: September 2001
  • Laatst online: 26-04 17:38
je kunt gewoon functieknoppen achter de items doen
<- niveau lager (parentNode)
-> subitem aanmaken ofzo, moet je even kijken wat handig is (appendChild)
/\ Plekje naar boven (previousSibling, cloneNode, replaceNode)
\/ Plekje naar onder (nextSibling, cloneNode, replaceNode)

Dus

code:
1
eenitem  < /\ \/ >

zeg maar

e: met 1 niveau? dan heb je dus de < en > niet eens nodig..

[ Voor 37% gewijzigd door r0bert op 31-05-2005 20:30 ]


  • MrQcue
  • Registratie: Januari 2005
  • Laatst online: 01-05 23:43
Wat je zegt zou heel goed kunnen (ik heb daar ook aan gedacht). Ik vind het alleen veel gebruiksvriendelijker om het mbv een drag n drop te maken. Vandaar dat ik via deze weg vroeg of iemand ooit wel eens zoiets is tegen gekomen of tutorials weet hoe je zoiets zelf kan maken.

  • r0bert
  • Registratie: September 2001
  • Laatst online: 26-04 17:38
Met drag&drop + domfuncties kom je al een eind. Stel iemand dropt een node op een andere, dan hoef je alleen dus het targetelement te achterhalen (moet toch bij een drop). Dan handel je het type element af, als het bijvoorbeeld een enkele node is, dropt ie m onder die node.

Daar kun je mooi iets mee maken met object, methodes cq prototypes als je het mij vraagt. Ik heb ook ooit eens precies gemaakt wat je nu vraagt, maar helaas heb ik de code niet meer..
Mailen/Msnen mag altijd natuurlijk

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Gordijntje heeft een hele mooie gemaakt. Zal hem even op dit topic wijzen, aangezien ik niet ga bepalen of het zomaar geshared mag worden :)

[ Voor 19% gewijzigd door BtM909 op 31-05-2005 23:15 ]

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

Ik vind alles prima B)

  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Is dit het begin van een quest? Zoek de treeview van Gordijn B)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


Verwijderd

BtM909 schreef op dinsdag 31 mei 2005 @ 23:17:
[...]

Is dit het begin van een quest? Zoek de treeview van Gordijn B)
http://www.mschopman.demon.nl/

daar staan de versies, 1.6.2 is de huidige op die plek, ik heb intern een nieuwere maar heb nog geen tijd gehad om deze uit iets waar ik mee bezig ben te slopen. Zoals je ziet ben ik een ster in documenteren ... en het bijhouden ervan.

  • MrQcue
  • Registratie: Januari 2005
  • Laatst online: 01-05 23:43
Ok, ik heb nu de volgende code gemaakt. Het werkt nu alleen nog in FireFox.

Ik kan nu 1 optie aanklikken/ingedrukt houden en deze slepen op de optie waar deze voor moet komen. Het probleem wat ik nu tegen kom is om een select box te sorteren. In PHP lukt me dat wel maar ik ben niet zo'n JS freak. Vandaar dat ik jullie hulp vraag.

code:
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
<html>

<script language="JavaScript" type="text/javascript">
var first = 0;
var second = 0;

function check_values (value) {
    if (first == 0) {
        first = value;
    }
    else {
        second = value;
    }

    if (first && second && first != second) {
        alert (first);
        alert (second);
        first = 0;
        second = 0;
    }
    else if (first == second) {
        first = 0;
        second = 0;
    }
}

</script>

<form>
    <select size="10">
        <option value="1" onMouseDown="javascript: check_values(this.value);" onMouseUp="javascript: check_values(this.value);">waarde 1</option>
        <option value="2" onMouseDown="javascript: check_values(this.value);" onMouseUp="javascript: check_values(this.value);">waarde 2</option>
        <option value="3" onMouseDown="javascript: check_values(this.value);" onMouseUp="javascript: check_values(this.value);">waarde 3</option>
        <option value="4" onMouseDown="javascript: check_values(this.value);" onMouseUp="javascript: check_values(this.value);">waarde 4</option>
    </select>
</form>

</html>

[ Voor 14% gewijzigd door MrQcue op 31-05-2005 23:39 ]


  • r0bert
  • Registratie: September 2001
  • Laatst online: 26-04 17:38
Handig is om even [ code ] tags om je code te plaatsen om het wat beter leesbaar te maken (monospaced en indention)

Maargoed, ik geloof niet dat ik goed begrepen heb wat je nou wou. Ik dacht dat je een soort navigatietree bedoelde met items die je kunt verslepen, zoals gordijnstok die inderdaad prachtig in elkaar gescript heeft (dat is een compliment ;)). Misschien kun je even aanduiden wat je plannen met bovenstaand script zijn? Je wil de options binnen een select gaan omwisselen? En daar dan nodes aan gaan koppelen ofzo :?

  • MrQcue
  • Registratie: Januari 2005
  • Laatst online: 01-05 23:43
_/-\o_ Dank gordijnstok

Maar toch mis ik wat. Net zoals de tree waar de link naartoe wijst in mij startpost, is het niet makkelijk om items op hetzelfde niveau te sorteren. Het is niet heel makkelijk 'Item 3' boven 'item 2' te plaatsen.

Voorbeeld:

Item 1
Item 2
Item 3
Item 4

Te veranderen naar:

Item 1
Item 3
Item 2
Item 4

Wat ik dus nodig heb is een mogelijkheid om categorieën te sorteren in een cms. Dus de gebruiker moet de groepen kunnen verslepen (in zijn gewenste volgorde kunnen zetten) op hetzelfde niveau. Als je een groep versleept moet je die tussen 2 andere groep kunnen plaatsen. Het mag wel hierarchisch zijn met meerdere niveau's want dat is wel de bedoeling en op de manier van gordijnstok wel zo handig.

[ Voor 39% gewijzigd door MrQcue op 31-05-2005 23:48 ]


  • Spruit_elf
  • Registratie: Februari 2001
  • Laatst online: 05-05 22:13

Spruit_elf

Intentionally left blank

Those who danced were thought to be quite insane by those who could not hear the music.


  • MrQcue
  • Registratie: Januari 2005
  • Laatst online: 01-05 23:43
Jaaaa! Dat ziet er best cool uit. Ik zal er morgen even goed naar kijken.... Maar dat doet precies wat ik wil. Nog wel op een enkel niveau maar diepere niveau's zijn ook niet direct noodzakelijk.

Verwijderd

MrQcue schreef op dinsdag 31 mei 2005 @ 23:38:
_/-\o_ Dank gordijnstok

Maar toch mis ik wat. Net zoals de tree waar de link naartoe wijst in mij startpost, is het niet makkelijk om items op hetzelfde niveau te sorteren. Het is niet heel makkelijk 'Item 3' boven 'item 2' te plaatsen.

Voorbeeld:

Item 1
Item 2
Item 3
Item 4

Te veranderen naar:

Item 1
Item 3
Item 2
Item 4

Wat ik dus nodig heb is een mogelijkheid om categorieën te sorteren in een cms. Dus de gebruiker moet de groepen kunnen verslepen (in zijn gewenste volgorde kunnen zetten) op hetzelfde niveau. Als je een groep versleept moet je die tussen 2 andere groep kunnen plaatsen. Het mag wel hierarchisch zijn met meerdere niveau's want dat is wel de bedoeling en op de manier van gordijnstok wel zo handig.
Dat kan wel, daarvoor zijn de methods moveUp, en moveDown. selectedNode kan elke referentie naar een node object zijn.

<a href="#" onclick="mytreeview.selectedNode.moveUp()">move up</a>
<a href="#" onclick="mytreeview.selectedNode.moveDown()">move down</a>

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 13:58

Pelle

🚴‍♂️

Sorry, maar scriptrequests doen we hier niet aan :)
Pagina: 1

Dit topic is gesloten.