2010-07-23 4 views
3
<form id="form1" method = "post"> 
Text1:<input type ="text" id="textname1"/><br> 
<input type ="button" name="button2" id="button2" value="UPDATE"> 
</form> 

<script type ="text/javascript"> 
    $(document).ready(function() { 
     $("#button2").click(function(e){ 
     alert($("#textname1").attr('value').replace('-','')); 
      }); 
     $("#textname1").datepicker(); 
     $("#textname1").datepicker("option", "dateFormat", 'yy-mm-dd'); 

    }); 
</script> 

Supposons que si j'entre la date dans le champ 2010-07-06 .Lorsque je clique sur le bouton 2 je reçois l'alerte que 201007-06.How puis-je remplacer la dernière trait d'union (-)Remplacer plusieurs instances d'un caractère dans une chaîne

Répondre

7

Modifiez l'argument d'expression régulière de votre fonction de remplacement pour inclure l'indicateur g, ce qui signifie "global". Cela remplacera chaque occurrence plutôt que seulement la première.

$("#textname1").attr('value').replace(/-/g,'') 
+0

quand j'ai remplacé tranquillisation iam obtenir la date comme « 2010-07-07'.I voulez remplacer le trait d'union – Someone

+0

@Someone: Vous devez supprimer les citations de la regex:'. remplacer (/ -/g, '')) ' –

+0

@ quelqu'un Essayez avec l'exemple correct –

0

Vous devez utiliser une expression régulière globale, l'expression régulière est entre s/'et g à la fin signifie donc globale dans votre cas:

"2010-07-06".replace(/-/g,'') 

supprimerait tous les tirets. Donc, votre code devient:

$(document).ready(
function() { 
    $("#button2").click(function(e){ 
     alert($("#textname1").attr('value').replace(/-/g,'')); 
    }); 
    $("#textname1").datepicker(); 
    $("#textname1").datepicker("option", "dateFormat", 'yy-mm-dd'); 
}); 
Questions connexes