如何在 JavaScript 中进行字符串替换以将“9.61”转换为“9:61”?

IT技术 javascript jquery
2021-01-29 23:23:20

鉴于代码行

var value = $("#text").val();

并且value = 9.61,我需要转换9.619:61. 如何在此处使用 JavaScript 替换功能?

6个回答

像这样做:

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);

更新以反映当前版本的 jQuery。而且这里有很多答案最适合与此相同的情况。作为开发人员,您需要知道哪个是哪个。

替换所有出现

要一次替换多个字符,使用这样一些东西:name.replace(/&/g, "-")在这里,我将所有&字符替换-. g意思是“全球”

注意- 您可能需要添加方括号以避免错误 -title.replace(/[+]/g, " ")

学分 vissu 和 Dante Cullari

thephpdeveloper 添加了一些东西以使其正确......应该这样做......见上面编辑
2021-03-27 23:23:20
如果我们尝试一次替换多个值,这将不起作用。:(
2021-03-31 23:23:20
我试过了,但由于 value.replace 不是函数而发生错误:(
2021-04-02 23:23:20
要一次替换多个字符,使用这样一些东西:name.replace(/&/g, "-")在这里,我将所有 '&' 字符替换为 '-'。“g”的意思是“全局”。
2021-04-03 23:23:20
注意 - 您可能需要添加方括号以避免错误 - title.replace(/[+]/g, " ")
2021-04-11 23:23:20

做到这一点最优雅的方法可能是一步完成。val()

$("#text").val(function(i, val) {
  return val.replace('.', ':');
});

相比:

var val = $("#text").val();
$("#text").val(val.replace('.', ':'));

从文档:

.val( function(index, value) )

function(index, value) 返回要设置的值的函数。

此方法通常用于设置表单字段的值。对于 <select multiple="multiple"> 元素,可以通过传入一个数组来选择多个s。

.val()方法允许我们通过传入函数来设置值。从 jQuery 1.4 开始,该函数传递了两个参数,当前元素的索引及其当前值:

$('input:text.items').val(function(index, value) {
  return value + ' ' + this.className;
});

此示例将字符串“items”附加到文本输入的值。

这需要 jQuery 1.4+。

但正如我所见,这家伙只想更改var value文本框中的值而不是您建议的值...
2021-03-30 23:23:20

我喜欢jQuery的方法链。简单地做...

    var value = $("#text").val().replace('.',':');

    //Or if you want to return the value:
    return $("#text").val().replace('.',':');
这实际上与 jquery 链接无关。在您调用.val()之后,它是一个常规字符串。
2021-03-23 23:23:20

一个简单的单衬:

$("#text").val( $("#text").val().replace(".", ":") );
你甚至不知道好的做法..你可能想阅读这个..stackoverflow.com/ questions/3230727/...
2021-03-13 23:23:20
这仅在值是字符串时才有效......而且,$("#text")在那里调用两次也不是一个好习惯......
2021-03-17 23:23:20
OP 也没有说明他想替换$("#text"):)
2021-04-02 23:23:20
证明它..并记住,过时 Jan 27 '10 at 10:16
2021-04-03 23:23:20
评论 1...错了。评论2...想想他的问题的逻辑,不需要具体说明。
2021-04-11 23:23:20

它可以通过常规的 JavaScript 函数来完成replace()

value.replace(".", ":");
我不确定我是否遗漏了什么,但由于该值来自文本框,它是一个字符串吗?示例jsfiddle.net/xMBuA
2021-04-07 23:23:20