Jag har en prompt som ber om namn. Klickar man på avbryt i prompten så ska naturligtvis inget hända, men det gör det... Namnet (name) blir null!
function changeName(oldName){
var name = escape(window.prompt("Skriv ditt namn",oldName));
if (name != null) {
document.location.href="?name="+name;
}
}
Jag gissar på att du får en sträng med värdet null när du använt escape(). Så antingen flyttar du escape in i if-satsen, eller jämför med strängen null istället.
function changeName(oldName){
var name = window.prompt("Skriv ditt namn",oldName);
if (name != null && name.length) {
document.location.href="?name="+escape(name);
}
}
Prompt returnerar null i det läget just för att det ska gå att spåra helt säkert om användaren har klickat avbryt. Jag rekommenderar koden ovan, som skickar användaren vidare endast om hon både har skrivit ett namn och inte klickat avbryt.
252 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849