所以我在我的脚本中有这个工作代码块来替换逗号","中的小数分隔符。进入期间"。" ,编辑表格时。因为在这个区域中十进制分隔符逗号是正常的我还希望值显示为1,99€所以我还原了工作函数。所选字段应在加载时更改。当表单提交后,我会再次将其重新组合。在本例中,我只展示了其中一个字段。
值=" 1.5"以错误的方式从Magento-Backend加载,这是另一个故事:
我加入onload:"function(event)"
和window.onload = function();
显示我尝试从jQuery添加此功能的两个尝试:jQuery('form').on('change', '#price', function(event)
我还需要知道如何删除.on('更改'部分。首次使用Js和jQuery。我真的尝试了一切。
<html>
<body onload="function(event)">
<form>
<input id="price" value="1.5">
</form>
</body>
</html>
<script>
window.onload = function();
jQuery('form').on('change', '#price', function(event) {
event.preventDefault();
if (jQuery('#price').val().includes('.')) {
var varwithpoint = jQuery('#price').val();
varwithcomma = varwithcomma.replace(",",".");
jQuery('#price').val(varwithpoint);
}
else {
console.log('no dot to replace');
}
});
</script>
答案 0 :(得分:1)
代码的一些部分似乎没有按预期工作,因此下面是将“,”转换为“。”的代码的基本示例。如果存储在输入“price”中,并在每次更改值后检查;
function convert_price(){
var this_price = $("#price").val();
if (this_price.includes(',')) {
this_price = this_price.replace(",",".");
$('#price').val(this_price);
} else {
console.dir('no dot to replace');
}
}
convert_price();
$("#price").on("change",convert_price);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<html>
<body>
<form>
<input id="price" value="1,5">
</form>
</body>
</html>
答案 1 :(得分:0)
我将“{”命名为将change
事件附加到输入文件的函数,我还更改了传递给on
函数的参数
function init(){
var input = jQuery('#price');
input.on('change', function(event) {
event.preventDefault();
var valueInInput = input.val();
if (valueInInput.includes('.')) {
var varwithcomma = valueInInput.replace(",",".");
input.val(varwithcomma);
} else {
console.log('no dot to replace');
}
});
}
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>
<body onload="init()">
<form>
<input id="price" value="1.5">
</form>
</body>
</html>