jquery - 如何在委托中使用 jQuery 数字格式
问题描述
我使用插件jQuery Number Format来动态格式化 "," decimal 和 "." 的数字。格式。这适用于正常事件。我遇到的问题是动态添加的 HTML,在其中您使用委托来触发 jQuery。
普通的
$('input.number').number( true, 2 );
如果我使用运行时存在的另一个 ID,例如#body,调用它的正确方法是什么?我尝试了类似的东西
$("#body").on("keyup", "input#number", function(event) {
$(this).number(true,2,',','.');
});
但它在小数点右侧的数字有问题。例如,如果我尝试输入“450,45”,则永远不会使用最后一个百位,我输入的其他数字将放在 10 位。
有没有合适的方法来做到这一点?
解决方案
据我了解,输入应始终类似于123.456
,第四个参数不是输入的另一个可能的小数分隔符,而是输出的千位分隔符。
$("#body").on("change", "input#number", function(event) {
// replace , by .
var value = $(this).val().replace(",",".");
// update input value
$(this).val($.number(value,2,',','.'));
});
最好的方法是强制用户通过验证提供有效输入。然后,您将避免必须找到这样的变通方法来格式化您的数字。这里有更多信息:https ://jqueryvalidation.org/number-method/
推荐阅读
- tensorflow - 如何在 TensorFlow Object Detection API 中使用fine_tune_checkpoint
- testing - 如何对依赖于 Web 应用程序警报通知 ID 的移动应用程序进行性能测试?
- javascript - 如何在 React 动态 JSX 中从一个 div 到另一个 div 绘制箭头?
- python - Jupyter notebook 在使用 MinMaxScalar 或 StandardScalar 时出错?
- spring - SpringBoot Logback 配置错误 - 空或空模式
- hotchocolate - hotchocolate:如何在 Errors[] 数组中引发多个错误
- c++ - 在 C++ 中按名称从页面源获取页面信息
- javascript - Search input onchange causes crashing - how to make it a button to submit search
- c# - CQRS 模式中的 Resharper 导航
- ag-grid - Ag-Grid - 从 RowNode 获取单元格列表