J'ai un champ de saisie caché qui prendra la valeur d'un autre lors de la frappe et j'essaie de comprendre comment transformer la valeur du champ caché en minuscules et remplacer les espaces par des tirets.
Donc, 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 "ceci est un échantillon".
<input type="text" name="title" value="This Is A Sample" />
<input type="hidden" name="identifier" value="this-is-a-sample />
Cela remplacera tous les espaces par -
<script type="text/javascript">
$(document).ready(function(){
var test= $('input[name="title"]').val();
test = test.toLowerCase().replace(/ /g, '-');
$('input[name="identifier"]').val(test);
}):
</script>
Pour convertir en minuscules:
var lowercase = 'This Is A Sample'.toLowerCase();
Pour remplacer un espace vide:
var Replace= 'This Is A Sample'.replace(/ /g,"-");
jetez un oeil à cet exemple
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>
var lower = $('input#textFieldId').val().toLowerCase(); // to lower case
var hyp = lower.replace(/ /g,"-"); // spaces to hyphens
$('input#hiddenFieldId').val(hyp); // in hidden field
Pour basculer votre texte en minuscules, utilisez la méthode JavaScript toLowerCase () .
<script type="text/javascript">
var str="Hello World!";
document.write(str.toLowerCase());
</script>
Voir cette question Stackoverflow sur la façon de remplacer tous les espaces par des tirets en utilisant JavaScript.