HighDots Forums  

wie Link zusammenbauen

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss wie Link zusammenbauen in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Harald Lathwesen
 
Posts: n/a

Default wie Link zusammenbauen - 01-22-2008 , 09:20 AM






Hallo,
gegeben ist ein Link in folgender Zusammenstellung:

<a style="font-family: Verdana;"
href="http://www.solarlog-home.eu/extra/top12.html?url=http://www.solarlog-home.de/noname
" target="visu">Monats TOP 12</a><br>

In der Datei http://www.solarlog-home.eu/extra/top12.html wird die
übergebene URL ausgewertet und als Pfad für das Einlesen von Daten
benutzt. Dieses passiert von vielen seiten aus. Leider ist nun jeder
Nutzer gezwungen, den Bereich nach url= mit seinem eigenen Pfad
anzupassen. Gerade solche Eingriffe in den Code sollen aber den Nutzern
erspart werden.

Da der Aufruf immer aus der selben Datei heraus erfolgt, kam mir die
Idee den Teil nach url= über eine Variable zu bestimmen.

testURL =
window.location.pathname.substr(0,window.location. pathname.length-10);

Da der Dateiname genau 10 Stellen lang ist kommt es hin.
Nun gild es die variable testURL in den Link einzubauen, und da
scheitert es bei mir.

Die Variante
<a style="font-family: Verdana;"
href="http://www.solarlog-home.eu/extra/top12.html?url="+testURL
target="visu">Monats TOP 12</a><br>

klappt nicht. Vermutlich muss ich es mit

<a style="font-family: Verdana;" <script
type="text/Javascript">document.write("<script type='text/JavaScript'
href='http://www.solarlog-home.eu/extra/top12.html?url='+testURL
Quote:
\/script>")</script> target="visu">Monats TOP 12</a><br
irgendwie zusammen bauen, aber wie habe ich noch nicht herausgefunden.

Kann mir jemand helfen?

Gruß
Harald



--
Antworten nur in der NG. Bei PM nur an hlcsb at web punkt de
Alles andere wird ungesehen gelöscht.
http://www.lathwesen.de/moba


Reply With Quote
  #2  
Old   
horst lorenz
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 04:12 AM






On 22 Jan., 16:20, Harald Lathwesen <news.
5.das399ig... (AT) spamgourmet (DOT) com> wrote:

Hi,

so ganz verstehe ich Dein Problem nicht, aber zwei Sachen fallen auf:

Quote:
href="http://www.solarlog-home.eu/extra/top12.html?url=http://www.solarlog-...

testURL =
window.location.pathname.substr(0,window.location. pathname.length-10);
wenn ich das richtig sehe, so brauchst Du den Wert auf den url zeigt.
Den Teil schneidest Du aber ab, so daß das übrigbleibt, was Du nicht
benötigst.

Quote:
Die Variante
a style="font-family: Verdana;"
href="http://www.solarlog-home.eu/extra/top12.html?url="+testURL
target="visu">Monats TOP 12</a><br

Quote:
klappt nicht.
Da mixt Du HTML und JS.
href="http://www.solarlog-home.eu/extra/top12.html?url="
wird vom Browser als Attribut-Wertpaar ausgewertet. Anschließend
versucht er
+testURL
als weiteres Attibut-Wertpaar zu interpretieren. Dabei bekommt er dann
verständlicherweise Bauschschmerzen...

Quote:
Vermutlich muss ich es mit

a style="font-family: Verdana;" <script
type="text/Javascript">document.write("<script type='text/JavaScript'
href='http://www.solarlog-home.eu/extra/top12.html?url='+testURL
\/script>")</script> target="visu">Monats TOP 12</a><br

irgendwie zusammen bauen, aber wie habe ich noch nicht herausgefunden.
Das ist mit dem "script" doppelt gemoppelt. Es könnte ungefähr so
aussehen:

<script type="text/javascript">
document.write("<a href='http://www.solarlog-home.eu/extra/top12.html?
url='+testURL>irgendwas</a>";
</script>

Vorraussetzung ist natürlich daß testURL als globale Variable
definiert ist. Es könnte auch folgendes funktionieren:

<a href="javascript:testURL='http://www.solarlog-home.eu/extra/
top12.html?url='+testURL;window.location.href=test URL;">irgendwas</a>

Sieht auch nicht wirklich glücklich aus, ist aber vielleicht ein
Ansatz zum Nachdenken...

Tschüß Horst.


Reply With Quote
  #3  
Old   
horst lorenz
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 04:32 AM



On 23 Jan., 11:12, horst lorenz <le... (AT) arcor (DOT) de> wrote:

Ich bin wohl noch nicht so richtig ausgeschlafen...

Quote:
script type="text/javascript"
document.write("<a href='http://www.solarlog-home.eu/extra/top12.html?
url='+testURL>irgendwas</a>";
/script
<script type="text/javscript>
document.write("<a href=http://www.solarlog-home.eu/extra/top12.html?
url="+testURL+">irgendwas</a>");
</script>

Tschüß Horst.



Reply With Quote
  #4  
Old   
Harald Lathwesen
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 07:42 AM



Hallo,

horst lorenz schrieb:

Quote:
Die Variante
a style="font-family: Verdana;"
href="http://www.solarlog-home.eu/extra/top12.html?url="+testURL
target="visu">Monats TOP 12</a><br


klappt nicht.

Da mixt Du HTML und JS.
das war mir schon klar, es sollte nur als Andeutung dessen dienen was
ich vorhatte.


Quote:
a href="javascript:testURL='http://www.solarlog-home.eu/extra/
top12.html?url='+testURL;window.location.href=test URL;">irgendwas</a

Sieht auch nicht wirklich glücklich aus, ist aber vielleicht ein
Ansatz zum Nachdenken...

ich habe die Variable testURL nun global komplett zusammengebaut und das
ganze nun so umgesetzt, was auch fast funktioniert.

<a style="font-family: Verdana;"
href="javascript:testURL;parent.visu.location.href =testURL;">irgendwas</a>


Nun muss ich noch etwas zu der Umgebung sagen. Das ganze läuft in einem
Frame. Die index.html definiert
<frameset cols="170,*" framespacing="1" frameborder="yes" border="1">
<frame src="links.html" name="links">
<frame src="anlageninfo.html" name="visu">
</frameset>

Der Link-Aufruf steht in der links.html, das Ergebnis soll im Frame
'visu' angezeigt werden. Das klappt auch. Leider wird die Anzeige des
Frame 'links' dabei auch verändert. Dort steht dann nur noch der Inhalt
von testURL und somit ist eine weitere Navigation unmöglich. An was habe
ich nicht gedacht?

Danke
Harald

--
Antworten nur in der NG. Bei PM nur an hlcsb at web punkt de
Alles andere wird ungesehen gelöscht.
http://www.lathwesen.de/moba


Reply With Quote
  #5  
Old   
Harald Lathwesen
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 09:03 AM



Ich antworte mir mal selber,

Harald Lathwesen schrieb:

Quote:
ich habe die Variable testURL nun global komplett zusammengebaut und das
ganze nun so umgesetzt, was auch fast funktioniert.

a style="font-family: Verdana;"
href="javascript:testURL;parent.visu.location.href =testURL;">irgendwas</a


Nun muss ich noch etwas zu der Umgebung sagen. Das ganze läuft in einem
Frame. Die index.html definiert
frameset cols="170,*" framespacing="1" frameborder="yes" border="1"
frame src="links.html" name="links"
frame src="anlageninfo.html" name="visu"
/frameset

Der Link-Aufruf steht in der links.html, das Ergebnis soll im Frame
'visu' angezeigt werden. Das klappt auch. Leider wird die Anzeige des
Frame 'links' dabei auch verändert. Dort steht dann nur noch der Inhalt
von testURL und somit ist eine weitere Navigation unmöglich. An was habe
ich nicht gedacht?

Ich habe eine function definiert:
<script type="text/Javascript">
function Seitenwechsel(hauptfensterURL) {
//definition der Frame-Fenster
parent.links.location = "links.html";
parent.visu.location = hauptfensterURL;
}
</script>

Der Link-Aufruf sieht nun so aus:
<a style="font-family: Verdana;"
href="javascript:Seitenwechsel('http://www.solarlog-home.eu/extra/top12.html?url='+testURL)">Monats
TOP 12</a>

Dabei wird zwar das Frame links jedesmal neu angezeigt, aber es
funktioniert erstmal

Gruß
Harald



--
Antworten nur in der NG. Bei PM nur an hlcsb at web punkt de
Alles andere wird ungesehen gelöscht.
http://www.lathwesen.de/moba


Reply With Quote
  #6  
Old   
horst lorenz
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 02:18 PM



On 23 Jan., 16:03, Harald Lathwesen <news.
5.das399ig... (AT) spamgourmet (DOT) com> wrote:
Quote:
ich habe die Variable testURL nun global komplett zusammengebaut und das
ganze nun so umgesetzt, was auch fast funktioniert.

a style="font-family: Verdana;"
href="javascript:testURL;parent.visu.location.href =testURL;">irgendwas</a
<a style="font-family: Verdana;"
href="javascriptarent.visu.location.href=testURL ;return
false">irgendwas</a>

sollte die Funktion Seitenwechsel und das doppelte Laden überflüssig
machen.

Tschüß Horst.


Reply With Quote
  #7  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 02:34 PM



horst lorenz wrote:
Quote:
Ich bin wohl noch nicht so richtig ausgeschlafen...
Stimmt.

Quote:
script type="text/javascript"
document.write("<a href='http://www.solarlog-home.eu/extra/top12.html?
url='+testURL>irgendwas</a>";
/script

script type="text/javscript
^^^^^^^^^^[1]
document.write("<a href=http://www.solarlog-home.eu/extra/top12.html?
^[2]
url="+testURL+">irgendwas</a>");
^^^^^^^[3] ^^[4]
/script
[1] Ungültiges generierendes Markup
[2] Ungültiges generiertes Markup: Attributwerte, die mindestens `:'
enthalten, müssen explizit begrenzt werden.
[3] Potentiell (und hier) ungültiger URI, siehe RFC 3986
[4] Ungültiges generierendes Markup:
in HTML ist der Inhaltstyp von `script' CDATA, welches bei ETAGO (`</')
endet.

<script type="text/javascript">
document.write(new Array(
'<a href="http://www.solarlog-home.eu/extra/top12.html?url=',
encodeURIComponent(testURL),
'">irgendwas<\/a>'
).join(""));
</script>


PointedEars
--
"Use any version of Microsoft Frontpage to create your site.
(This won't prevent people from viewing your source, but no
one will want to steal it.)" -- Tipp gegen Quellcode-Klau,
<http://www.vortex-webdesign.com/help/hidesource.htm>


Reply With Quote
  #8  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: wie Link zusammenbauen - 01-23-2008 , 03:22 PM



Thomas 'PointedEars' Lahn wrote:
Quote:
horst lorenz wrote:
[...]
script type="text/javscript
^^^^^^^^^^[1]
document.write("<a href=http://www.solarlog-home.eu/extra/top12.html?
^[2]
url="+testURL+">irgendwas</a>");
^^^^^^^[3] ^^[4]
/script

[...]
[2] Ungültiges generiertes Markup: Attributwerte, die mindestens `:'
enthalten, müssen explizit begrenzt werden.
Das sollte `/' heissen; für `:' werden keine Begrenzer benötigt.
Jedoch wird empfohlen, alle Werte explizit zu begrenzen:

http://www.w3.org/TR/html401/intro/sgmltut.html#h-3.2.2


PointedEars
--
Man kann mit JavaScript eine große Zahl von Roundtrips eliminieren und
damit die Usability erhöhen. Allerdings übersteigen die Möglichkeiten
von JavaScript die zerebralen Fähigkeiten der meisten Webmaster bei
Weitem. -- Johann Burkard in dag°


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.