我想格式化价格并以正确的格式打印。例如,5000000 将显示为 $5,000,000。谁能告诉我如何做到这一点?
<span data-bind="text:Price"></span>
<span data-bind="function()"></span>
我可以编写一个内联函数来获取该值并对其进行格式化吗? text: Price 的值可以传递给 formatfunction() 吗?
formatfunction(label){return '$' + label.value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
最佳答案
Knockout 的一个聪明之处在于,绑定(bind)是代码片段,因此您可以在其中使用表达式。所以你可以调用一个函数:
<span data-bind="text:formatfunction(Price)"></span>
只是,作为一项规则,尽量不要让表达式变得非常复杂。复杂的表达式属于您的 View 模型。
关于javascript - 将数据绑定(bind)参数传递给函数 knockout ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35875637/