Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung JavaScript

GELÖST

LastIndexOf is not a function

Mitglied: EvilMoe

EvilMoe (Level 2) - Jetzt verbinden

22.05.2007, aktualisiert 23.05.2007, 6082 Aufrufe, 10 Kommentare

Ich bin dabei mit javascript den Dateinamen zu filtern vom rest einer URL. Der Code sieht bis jetzt wie folgt aus:
01.
				var firstpos = page.lastindexof('/'); 
02.
				var lastpos = page.length(); 
03.
				var page = page.split(firstpos + 1, lastpos);
"page" ist mit der URL definiert. Wenn die URL z.B. "http://localhost/test/datei.html" ist will ich daraus nur "datei.html" haben. Wenn ich das Script so ausführe zeigt mir FireFox. "LastIndexOf is not a function". Was mache ich falsch?
Mitglied: bastla
22.05.2007 um 20:55 Uhr
Hallo EvilMoe!

Und wenn Du das so versuchst:
01.
var fpath = page.split('/'); 
02.
var fname = fpath[fpath.length - 1];
Zum Fehler bei "LastIndexOf" habe ich leider keine Idee ...

Grüße
bastla
Bitte warten ..
Mitglied: EvilMoe
22.05.2007 um 20:59 Uhr
Ich weiss nicht was los ist aber bei split kommt der selbe fehler. "page.split is not a function".... was ist denn hier bei mir los. Das kann doch nicht sein das die Funktionen bei mir fehlen.
Bitte warten ..
Mitglied: Guenni
22.05.2007 um 21:12 Uhr
@EvilMoe

Hi,

lastindexof wird lastIndexOf geschrieben. Bei Java-Script
ist Groß-Kleinschreibung zu beachten!!

In der Funktion split(var string) wird ein Trennzeichen angegeben.
Die Funktion zerlegt einen übergebenen String dann anhand dieses
Trennzeichens in einzelne Teile und gibt ein Array zurück.
Du aber hast Zahlen übergeben.

Um einen Teilstring zu extrahieren gibt es die Funktion substr(pos_ab_wo).

Möglich sind aber beide, eine Version mit substr(), eine mit split():

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
02.
 
03.
<html> 
04.
<head> 
05.
<title>Untitled</title> 
06.
<script type="text/javascript"> 
07.
<!-- 
08.
function extract_datei1(){ 
09.
 var url="http://localhost/ordner/ordner/datei1.html"; 
10.
 var pos=url.lastIndexOf("/")+1; 
11.
 var dateiname1=url.substr(pos); 
12.
 alert("Version 1 mit substr: " + dateiname1); 
13.
14.
function extract_datei2(){ 
15.
 var url="http://localhost/ordner/ordner/datei2.html"; 
16.
 var elemente=url.split("/"); 
17.
 var dateiname2=elemente[elemente.length-1]; 
18.
 alert("Version 2 mit split: " + dateiname2); 
19.
20.
extract_datei1(); 
21.
extract_datei2(); 
22.
// --> 
23.
</script> 
24.
 
25.
</head> 
26.
<body> 
27.
 
28.
 
29.
</script> 
30.
</body> 
31.
</html>
Grüße
Günni
Bitte warten ..
Mitglied: EvilMoe
22.05.2007 um 21:32 Uhr
Deine Funktionen gehen auch soweit... aber wenn ich eine Funktion so umbaue das die URL als Parameter übergeben wird gehts auch noch. ABER wenn ich jetzt die Funktion aus einer anderen aufrufen will kommt wieder der fehler "lastIndexOf is not a function".

Bsp.
geht:
01.
 
02.
		function extract_datei(url){ 
03.
			 var url=url; 
04.
			 var pos=url.lastIndexOf("/")+1; 
05.
			 var dateiname1=url.substr(pos); 
06.
			 alert("Version 1 mit substr: " + dateiname1); 
07.
08.
		 
09.
				 
10.
		 
11.
		extract_datei("http://localhost/ordner/ordner/datei1.html"); 
12.
 
13.
 
14.
 
geht nicht:
01.
		function extract_datei(url){ 
02.
			 var url=url; 
03.
			 var pos=url.lastIndexOf("/")+1; 
04.
			 var dateiname1=url.substr(pos); 
05.
			 alert("Version 1 mit substr: " + dateiname1); 
06.
07.
		 
08.
				 
09.
		 
10.
			function spLoadPage(url) 
11.
12.
				var page = extract_datei(url); 
13.
				 
14.
			}
Bitte warten ..
Mitglied: EvilMoe
22.05.2007 um 21:58 Uhr
Ich habs mal online gestellt vielleicht hilft das weiter:
http://sven.evilmoe.com
Bitte warten ..
Mitglied: filippg
22.05.2007 um 21:59 Uhr
Also da würde ich schätzen, dass durch die Zuweisung
var page = extract_datei(url);
erwartet wird, dass die Funktion extract_datei(...) ein Wert zurückgeliefert wird. Allerdings sehe ich in dem Funktionsrumpf nirgends eine return-Anweisung. Was das nun mit lastIndexOf zu tun haben soll ist mir auch unklar.

Filipp

btw: lastIndexOf ist nur für Strings definiert. Kann es sein, dass du "url" eine Zahl zugewiesen hast?
Bitte warten ..
Mitglied: EvilMoe
22.05.2007 um 22:07 Uhr
Ja vergisst mal das Beispiel oben hab das nur schnell als Beispiel zusammengebaut. Schaut ich die Wesbite an die ich vorhin gepostet habe das ist mein aktueller standt. Nein ich habe sicher keine Zahl zugewiesen. Wenn ich ein alert vor "var pos=url.lastIndexOf('/')+1;" setzt wird mir noch die URL angezeigt und ist 100%ig keine Zahl. Aber trotzdem immer "... is not a function..."
Bitte warten ..
Mitglied: Guenni
22.05.2007 um 22:08 Uhr
@EvilMoe

Hi,

wenn du Funktionen verschachtelst, heißt, eine Funktion verarbeitet das
Ergebnis einer anderen Funktion, so muß diese andere Funktion auch einen
Wert zurückgeben. Das wird mit dem Schlüsselwort return gemacht.

Heißt z.B.:
01.
funktion quadrat(parameter){ 
02.
 return parameter*parameter; 
03.
04.
 
05.
var d=quadrat(4);
Heißt, auf dein Beispiel übertragen:

01.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
02.
 
03.
<html> 
04.
<head> 
05.
<title>Untitled</title> 
06.
<script type="text/javascript"> 
07.
<!-- 
08.
function extract_datei1(url){ 
09.
 var pos=url.lastIndexOf("/")+1; 
10.
 var dateiname1=url.substr(pos); 
11.
 return dateiname1; 
12.
13.
 
14.
function zeige_dateiname_der_url(url){ 
15.
 alert(extract_datei1(url)); 
16.
17.
zeige_dateiname_der_url("http://localhost/ordner/ordner/ordner/datei.html"); 
18.
// --> 
19.
</script> 
20.
 
21.
</head> 
22.
<body> 
23.
 
24.
 
25.
</script> 
26.
</body> 
27.
</html>
Grüße
Günni
Bitte warten ..
Mitglied: EvilMoe
22.05.2007 um 22:17 Uhr
es sieht jetzt so aus:
01.
 
02.
	function spLoadPage(url) 
03.
04.
				var pos=url.lastIndexOf("/")+1; 
05.
				var page=url.substr(pos); 
06.
 
07.
				request = createRequest(); 
08.
				request.onreadystatechange = complete; 
09.
				request.open('GET', 'ajax_'+page, true); 
10.
				request.send(null); 
11.
				return false; 
12.
13.
 
Es kommt trotzdem der fehler....
Wie siehts bei euch aus kommt da kein Fehler? Kommt de nur bei mir? Auf die Wesbsite bezogen...



EDIT:

Ok problem gelöst! Ich hab bei meinen Links bei onclick stehen als Parameter für spLoadPage "this" muss aber "this.href" heissen...
Bitte warten ..
Mitglied: filippg
23.05.2007 um 02:33 Uhr
Ja vergisst mal das Beispiel oben hab das nur
schnell als Beispiel zusammengebaut.
Du Keks. Und das "Scherz" spare ich mir mal ganz bewusst. Wer geholfen haben will, der sollte wenigstens in der Lage sein, seine Frage vernünftig zu formulieren, und auch anständige Beispiele zu produzieren.

Filipp
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Abfrage function und weitergabe der Parameter
gelöst Frage von complexBatch & Shell6 Kommentare

Hallo zusammen, bin leider noch blutiger anfänger im Bereich Powershell. Zu meinem Problem: Ich möchte ein Script schreiben, dass ...

JavaScript
Uncaught TypeError: intermediate value.on is not a function
Frage von LorderichJavaScript

Hallo zusammen, ich weiss, ist etwas viel Aufwand für einen Beitrag, allerdings suche ich mittlerweile seit 2 Tagen nach ...

PHP
Function ereg() is deprecated
gelöst Frage von 91863PHP6 Kommentare

Hallo, ich bekomme die Meldung: Die Zeile ist Wei muss die Richtig lauten, das die das PHP kennt ? ...

PHP
Php function für Statusabfrage aus MySQL
gelöst Frage von carl7nPHP6 Kommentare

Hi, ich bringe mir gerade anhand verschiedener Webtutorials selbst PHP und MySQL bei. Das klappt grundsätzlich schon ganz gut. ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 1 TagTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 1 TagSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 1 TagSicherheit9 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Sicherheit
Meltdown und Spectre: Die machen uns alle was vor
Information von FrankSicherheit29 Kommentare

Aktuell sieht es in den Medien so aus, als hätten die Hersteller wie Intel, Microsoft und Co den aktuellen ...

SAN, NAS, DAS
Hilfe beim Einrichten eines Storages (SAN)
gelöst Frage von Vader666SAN, NAS, DAS15 Kommentare

Hallo Admins! Ich bin in einer kleineren Firma und hatte bisher mit dem Thema SAN nur in meiner Ausbildung ...

Monitoring
VPN Performance Zyxel-Fritte
gelöst Frage von HenereMonitoring13 Kommentare

Servus, nachdem ihr mir ja schon so gut helfen konntet, was das VPN zwischen Zyxel USG60W und Fritte 7490 ...

Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...