2012-04-09 18 views
-1

i ein Eingabefeld, die URL von dem Benutzer akzeptiert und ich brauche slash für Hinter wie so zu überprüfen:slash Hinzufügen von Hinter mit JavaScript URL

  • www.example.com (add slash)
  • www.exaple.com/ (ignorieren)
  • www.example.com/index.php (ignorieren)

Wie kann ich dies erreichen in javaScript?

PS .htaccess und PHP sind nicht die Optionen

+1

Was haben Sie versucht? Wo kommst du in Schwierigkeiten? Haben Sie die verschiedenen 'String'-Funktionen zumindest gelesen? [MDC hat eine ordentliche Seite auf 'String'] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String) –

+0

gut problem hier ist ich weiß, wie man überprüft, ob es am Ende von etw ist der String (Schrägstrich in diesem Fall) das Problem ist, dass ich kann nicht herausfinden, wie kann ich überprüfen, ob ich es in oder nicht abhängig von der Struktur des Links hinzufügen müssen – Nick

+0

Haben Sie versucht, reguläre Ausdrücke zu bestimmen, ob der Schrägstrich benötigt wird? – JanD

Antwort

1

Try this -

function URLFormat() { 
    var url = document.getElementById('inputURL').value; 
    var urlParts = url.split("/") 
    var result = ''; 
    for (i = 0; i < urlParts.length; i++) { 
     if (i == urlParts.length - 1) { 
      if (urlParts[i].indexOf('.') > -1) { 
       // trailing slash not required 
       result = url; 
      } 
      else { 
       if (urlParts[i].indexOf('#') > -1) { 
        // trailing slash not required 
        result = url; 
       } 
       else { 
        //Assume this is a folder and add a slash 
        result = url + '/'; 
       } 
      } 
     } 
    } 
    alert(result); 
} 
+0

mit ein wenig Modifikation könnte dies verwenden, danke – Nick

+0

Happy, dass ich Ihnen helfen konnte, aber konnten Sie Änderung schreiben, die Sie tun mussten? Nur für meine Referenz, wenn etwas nicht stimmt. – AYK

0
var input = "http://www.example.com"; 
var hasTrailingSlash = input.charAt(input.length - 1) === "/"; 
+0

dies Doesnt nicht das Problem mit dem dritten Beispiel, weil durch diese Prüfung würde ich sagen, ich brauche einen Schrägstrich dort. – Nick

+0

Wie wäre es mit meinem gültigen gPlus-Link 'http: // mydomain.com/+' – mplungjan

0

versuchen diese

function func(url) { 
    var domain = url.split("/")[0]; 
    var answer; 
    if(url == domain){ 
     answer = url + "/"; 
    } else { 
     answer = url; 
    } 
    alert(answer); 
} 
+0

Der abschließende Schrägstrich verschwindet mit dem Split und wie wird dies behandelt http://www.server.com/subfolder? – mplungjan