2009-11-01 4 views
0

dans mon bind « cliquez sur » événement, je voudrais couper le dernier caractère hors d'une chaîne donnée progressivement. Cependant, chaque fois que je clique dessus, il semble s'arrêter après le premier chomp.jquery: bind « cliquez sur » événement

var somestring = "mary had a little lamb"; 
$("#removelaststring").unbind("click").bind("click",function(e){ 

alert(somestring.slice(0,-1)) 

}); 

il devrait revenir « un caractère de moins » à chaque fois que l'on clique dessus

Répondre

1

somestring.slice(0,-1) vous donne une nouvelle chaîne sans la dernière lettre, mais il ne modifie pas somestring. Essayez alert(somestring = somestring.slice(0,-1));.

+0

ne fonctionne pas. encore retourne le dernier caractère supprimé, peu importe combien de fois je clique – wghwh

2
var somestring = "mary had a little lamb"; 

// you can use .click(function) instead of .bind("click", function) 
$("#removelaststring").click(function(e){ 
    // slice & save it 
    somestring = somestring.slice(0,-1); 
    alert(somestring); 
}); 
+0

d'accord au sujet de ce somestring.replace («/regex/», « »)? regex pour remplacer le dernier caractère. – wghwh

+0

quand vous dites que remplacer le dernier caractère utilisant l'expression rationnelle, voulez-vous construire la regex lors de l'exécution avec un motif que vous pouvez spécifier? Aussi, voulez-vous dire littéralement le dernier caractère ou les caractères correspondant au motif d'expression régulière? –

+1

ce qui est exactement l'objet de votre question? –