Étant donné la ligne de code
var value = $("#text").val();
et value = 9.61
, je dois convertir 9.61
à 9:61
. Comment puis-je utiliser la fonction de remplacement JavaScript ici?
Étant donné la ligne de code
var value = $("#text").val();
et value = 9.61
, je dois convertir 9.61
à 9:61
. Comment puis-je utiliser la fonction de remplacement JavaScript ici?
Réponses:
Fais-le comme ça:
var value = $("#text").val(); // value = 9.61 use $("#text").text() if you are not on select box...
value = value.replace(".", ":"); // value = 9:61
// can then use it as
$("#anothertext").val(value);
Mis à jour pour refléter la version actuelle de jQuery. Et il y a aussi beaucoup de réponses ici qui correspondent le mieux à une même situation que celle-ci. En tant que développeur, vous devez savoir lequel est lequel.
Pour remplacer plusieurs caractères à la fois utiliser quelque chose comme ceci: name.replace(/&/g, "-")
. Ici, je remplace tous les &
caractères par -
. g
signifie "global"
Remarque - vous devrez peut-être ajouter des crochets pour éviter une erreur -title.replace(/[+]/g, " ")
crédits vissu et Dante Cullari
name.replace(/&/g, "-")
. Ici, je remplace tous les caractères '&' par '-'. "g" signifie "global".
title.replace(/[+]/g, " ")
La façon la plus élégante de le faire est probablement de le faire en une seule étape. Tu vois val()
.
$("#text").val(function(i, val) {
return val.replace('.', ':');
});
par rapport à:
var val = $("#text").val();
$("#text").val(val.replace('.', ':'));
De la documentation:
.val( function(index, value) )
fonction (index, valeur) Une fonction renvoyant la valeur à définir.
Cette méthode est généralement utilisée pour définir les valeurs des champs de formulaire. Pour les
<select multiple="multiple">
éléments, plusieurs s peuvent être sélectionnés en passant dans un tableau.La
.val()
méthode nous permet de fixer la valeur en passant une fonction. Depuis jQuery 1.4, la fonction reçoit deux arguments, l'index de l'élément courant et sa valeur courante:$('input:text.items').val(function(index, value) { return value + ' ' + this.className; });
Cet exemple ajoute la chaîne "items" aux valeurs des entrées de texte.
Cela nécessite jQuery 1.4+.
var value
et non la valeur dans la zone de texte comme vous l'avez suggéré ...
J'adore le chaînage de méthodes de jQuery . Faites simplement ...
var value = $("#text").val().replace('.',':');
//Or if you want to return the value:
return $("#text").val().replace('.',':');
.val()
c'est une chaîne régulière.
Un simple liner:
$("#text").val( $("#text").val().replace(".", ":") );
$("#text")
deux fois n'est pas une bonne pratique ...
$("#text")
:)
Jan 27 '10 at 10:16
Cela peut être fait avec la fonction JavaScript standard replace()
.
value.replace(".", ":");