replace() funktioniert nicht ganz

Hm, mir scheint, jetzt habe ich es erst richtig verstanden: Das Problem ist die Eingabe in dem zweiten Inputfeld. Hier sehe ich ein prinzipielles Problem: Das Skript weiß ja bei einem Tastendruck noch nicht, ob die Eingabe fertig ist oder der Benutzer noch weiter schreiben will. Mögliche Lösung: onchange statt oninput verwenden, dann wird erst überarbeitet, wenn der Benutzer Enter drückt.
 
Habe es jetz so gelöst :
Code:
<span id="clean_url_result"></span>
  <label for="">Titel</label>
<input type="text" name="" value="" id="title" oninput="pruf(this.value);showUser(document.getElementById('clean_url').value);">
<label for="">Url zum Artikel</label>
<input type="text" name="clean_url" value="" id="clean_url" oninput="showUser(this.value);" onchange="pruf(this.value);">
<label for="newText">Beitrag</label>

Code:
function pruf(str) {
    text = str.replace(/ /g, "-").replace(/([^-]+)-+$/, "$1");
    document.getElementById("clean_url").value = text;
}
 
Zurück