2017-02-13 55 views
0

我想要在使用JS或JQuery的输入字段中使用type="number"将点转换为逗号的解决方案。在输入类型中将点转换为逗号=数

问题是双重的:

1)它需要更换点无论它位于何处在输入字段中。值可以是,例如:

0.50 

.45 

12.45 

12. 

2)我不能使用键控作为触发器。该字段由外部连接的缩放比例填充,该缩放比例一次发送包括点在内的数字。

我希望有人能够帮助这一点,它真的做我的头。

**更新** 我设法让这段代码的工作,但只有在输入文本。如果我使用NUMBER,只需将输入清除干净(我需要它为NUMBER以便使用数字执行其他页内计算)。

document.getElementById('purchaseQuantity').addEventListener('input', function() { 
    document.getElementById('purchaseQuantity').value = this.value.replace('.', ',') 
}); 

感谢,

+0

之前,它被设置为输入获得的价值,并在那里修改 – Weedoze

+0

你可以使用'平变化'事件? –

+0

Weedoze,我该怎么做?它直接插入到输入中,方式与Ctrl + V相同。 Gulfaran,onchange仅在用户离开输入字段时触发,否? –

回答

1

使用隐藏字段名称,以及更新处理程序中的价值。

document.getElementById('number').addEventListener('input', function() { 
 
    document.getElementById('hidden').value = this.value.replace('.', ',') 
 
})
<input type="number" id="number" /> 
 
<input type="hidden" name="number" id="hidden" />

+0

嗨,这不适合我吗?即使在这里的Stackoverflow,我点击“运行代码片段”,但是当我把一个数字与一个点没有更改.. –

+0

@AndreasBB:值将更新隐藏字段 –

0

var numComma = (value.toString()).replace(".", ",")

转换数字符串,然后使用.replace(".",",")

相关问题