webForumDet fria alternativet

Treemenu

7 svar · 236 visningar · startad av catalina76

catalina76Medlem sedan mars 200256 inlägg
#1

Hej,
Bifogad kod genereras automatiskt när man i det vektyg som vi jobbar i(SAS) slänger in ett sådant object. Så tyvärr kan man inte göra så mycket åt den. Jag styr urlar och vad som ska stå på foldrarna via en tabell som man skickar in till objektet.

Det jag nu vill göra är att när jag klickar på länken som visas i menyn så vill jag INTE köra en href utan då vill jag att en liten javascriptfunktion som jag skriver själv ska köras. Ex bara en alert till attt börja med.

I nedanstående ex. har jag slängt in di.se som länk. Det jag hoppas ni kan hjälpa mig med är att istället för att kila iväg till di:s hemsida så vill jag att:
- Sidan inte laddas om
- En funktion ska köras istället.

JojoxxMedlem sedan juni 20004 306 inlägg
#2

Du har ett ställe i koden som lyder;

 if (this.href != "null" && this.href != "." && this.href != "") { 
  document.write("<TD NOWRAP VALIGN=MIDDLE><a href='" + this.href + "' target='" + frame + "' class='treeLink'>"+ this.nodeText +"</a>");
} 
 else {   document.write("<TD NOWRAP VALIGN=MIDDLE><span class='treeText'>"+ this.nodeText +"</span>"); 
 }

Byt ut detta mot;

 if(this.href.substring(0,8)=='onClick:'){
  document.write("<TD NOWRAP VALIGN=MIDDLE><a href='#' onClick=\""+this.href.substring(8)+"\" class='treeLink'>"+ this.nodeText +"</a>");
 } else if (this.href != "null" && this.href != "." && this.href != "") { 
  document.write("<TD NOWRAP VALIGN=MIDDLE><a href='" + this.href + "' target='" + frame + "' class='treeLink'>"+ this.nodeText +"</a>");
 }  else {
  document.write("<TD NOWRAP VALIGN=MIDDLE><span class='treeText'>"+ this.nodeText +"</span>"); 
 }

Så kan du göra "tomma länkar" med onClick-event genom att skapa noden med;

node3= new Node("D","onClick:alert('foo'); return false;","doc.gif","doc.gif","node6");

catalina76Medlem sedan mars 200256 inlägg
#3

Tack, men grejen är ju att javascriptkoden genereras automatiskt av det objekt som jag har lagt in i sidan.

Så det enda jag tyvärr kan mecka med är själva url:en.
Men jag ska se om det möjligtvis går att klämma in ditt förslag på något sätt;)

Tack jättemycket.

catalina76Medlem sedan mars 200256 inlägg
#4

Nope får det inte att fungera...

Se fler tips blir jag glad för.
Dessutom undrar jag om någon kan förklara skillnaden mellan a href- taggen
och href i javascript. Dessa beter ju inte sig helt likadant. I a href taggen kan jag få ett javascript anropatt funka medan samma sak inte fungerar i href i js.
Ex

JojoxxMedlem sedan juni 20004 306 inlägg
#5

Jopp, det funkar :) Jag har testat. Bifogar ditt exempel med modifieringen.

Beträffande href så är det i detta script bara en egenskap för ett eget objekt. Egenskapen skulle lika gärna kunna ha namnet kockobello. Denna egenskap används sedan för att skapa ett vanligt <a>-element där egenskapen href för det egna objektet används som href-attribut i länken. Det enda som hindrar dig från att lägga in "javascript: din_javascript_kod" är att länken har ett target, "_blank" i detta fall.

JojoxxMedlem sedan juni 20004 306 inlägg
#6

Filen också...

catalina76Medlem sedan mars 200256 inlägg
#7

Jag menar att jag INTE kan modifiera koden...
Den är inget jag skriver... nu har jag gjort en view soure på fönstret.

Koden skapas automatiskt av SAS(verktyget).

Som sagt så är tyvär det enda jag kan modifiera just nu url:en. För jag har ingen lust att skriva om hela min servlet...

Tack ändock :)

catalina76Medlem sedan mars 200256 inlägg
#8

TACK!
Alltså din förklaring av href fick mig att förstå, target kan jag styra från min servlet så nu torde problemet lösas.

Du har räddat min helg ;))

Genererad på 384 ms · cache AV · v20260730165559-full.f96bc7eb