2010-09-29 7 views
27

J'ai un champ d'entrée caché qui va prendre la valeur d'un autre sur le clavier et j'essaie de comprendre comment transformer la valeur dans le champ caché en minuscules et remplacer les espaces par des traits d'union. Par conséquent, si quelqu'un tape "Ceci est un échantillon" dans le champ de saisie du titre, le champ de saisie de l'identifiant sera défini sur "this-is-a-sample".Comment puis-je modifier du texte en minuscules et remplacer des espaces par des tirets en utilisant jQuery?

<input type="text" name="title" value="This Is A Sample" /> 
<input type="hidden" name="identifier" value="this-is-a-sample /> 
+3

comme un moyen de générer un segment d'URL, vous pouvez étendre les exigences pour remplacer, supprimer ou encode caractères tic aussi bien (#, /, <, >, etc.). –

Répondre

55

Cela remplacera tous les espaces avec - si cela est utilisé

<script type="text/javascript"> 
$(document).ready(function(){ 
var test= $('input[name="title"]').val(); 
test = test.toLowerCase().replace(/ /g, '-'); 
$('input[name="identifier"]').val(test); 
}): 
</script> 
+0

Très utile Merci – Wazan

1

Pour mettre votre texte en minuscules, utilisez le JavaScript toLowerCase() method.

<script type="text/javascript"> 

var str="Hello World!"; 
document.write(str.toLowerCase()); 

</script> 

Voir this Stackoverflow question sur la façon de remplacer tous les espaces avec des tirets en utilisant JavaScript.

3

Vous pouvez le faire comme ceci:

<script type="text/javascript"> 
var el = document.getElementById('identifier'); 
var text = el.value; 
el.value = text.toLowerCase().replace(' ', '-'); 
</script> 

ou si vous utilisez JQuery:

<script type="text/javascript"> 
$('identifier').value = $('identifier').value.toLowerCase().replace(' ', '-'); 
</script> 
14

Convertir en minuscules:

var lowercase = 'This Is A Sample'.toLowerCase(); 

Pour remplacer l'espace vide:

var Replace= 'This Is A Sample'.replace(/ /g,"-"); 

un coup d'oeil à cet exemple

@JSbin

2
var lower = $('input#textFieldId').val().toLowerCase(); // to lower case 
var hyp = lower.replace(/ /g,"-");      // spaces to hyphens 
$('input#hiddenFieldId').val(hyp);      // in hidden field 

Check

Questions connexes