Data la riga di codice
var value = $("#text").val();
e value = 9.61
, devo convertirlo 9.61
in 9:61
. Come posso utilizzare la funzione di sostituzione JavaScript qui?
Data la riga di codice
var value = $("#text").val();
e value = 9.61
, devo convertirlo 9.61
in 9:61
. Come posso utilizzare la funzione di sostituzione JavaScript qui?
Risposte:
Fai cosi:
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);
Aggiornato per riflettere la versione corrente di jQuery. E ci sono anche molte risposte qui che si adatterebbero meglio a qualsiasi situazione del genere. Come sviluppatore, devi sapere quale è quale.
Per sostituire più caratteri alla volta usare qualche cosa come questa: name.replace(/&/g, "-")
. Qui sto sostituendo tutti i &
caratteri con -
. g
significa "globale"
Nota : potrebbe essere necessario aggiungere parentesi quadre per evitare un errore -title.replace(/[+]/g, " ")
crediti vissu e Dante Cullari
name.replace(/&/g, "-")
. Qui sto sostituendo tutti i caratteri '&' con '-'. "g" significa "globale".
title.replace(/[+]/g, " ")
Probabilmente il modo più elegante per farlo è farlo in un solo passaggio. Vedere val()
.
$("#text").val(function(i, val) {
return val.replace('.', ':');
});
rispetto a:
var val = $("#text").val();
$("#text").val(val.replace('.', ':'));
Dai documenti:
.val( function(index, value) )
funzione (indice, valore) Una funzione che restituisce il valore da impostare.
Questo metodo viene in genere utilizzato per impostare i valori dei campi modulo. Per gli
<select multiple="multiple">
elementi, è possibile selezionare più s passando in un array.Il
.val()
metodo ci consente di impostare il valore passando una funzione. A partire da jQuery 1.4, alla funzione vengono passati due argomenti, l'indice dell'elemento corrente e il suo valore corrente:$('input:text.items').val(function(index, value) { return value + ' ' + this.className; });
In questo esempio viene aggiunta la stringa "elementi" ai valori degli input di testo.
Ciò richiede jQuery 1.4+.
var value
Adoro il metodo concatenato di jQuery . Basta fare ...
var value = $("#text").val().replace('.',':');
//Or if you want to return the value:
return $("#text").val().replace('.',':');
.val()
è una stringa normale.
Una semplice fodera:
$("#text").val( $("#text").val().replace(".", ":") );
$("#text")
due volte non è una buona pratica ...
$("#text")
:)
Jan 27 '10 at 10:16
Può essere fatto con la normale funzione JavaScript replace()
.
value.replace(".", ":");