【发布时间】:2015-02-18 15:30:17
【问题描述】:
(这是我遇到的问题的一个极其简化的示例。它可能没有太多的功能意义)
我需要一个可以在其中输入货币的文本框,它将转换为 viewmodel 上的 int 并在文本框中转换为格式良好的值
我的代码来自
Example 4: Filtering and validating user input
并扔掉了 lastInputWasValid 和 NaN 测试。
我的结果在这里:http://jsfiddle.net/cvv341ro/8
如果我输入 1234,acceptedNumericValue 的值将是 1234,文本框中的值将是 €1234。好!
如果我输入 €567.0,acceptedNumericValue 的值为 567,文本框中的值为 €567。太棒了!
但是,如果我然后键入 567.0000(与接受的值相同),则敲除将向 acceptedNumericValue 写入一个已经存在的值,并且不会更新文本框。
我明白了 :) 所以我会踢一脚淘汰赛,然后在 acceptedNumericValue 上致电 valueHasMutated 以使其发挥作用
我可以看到正在调用计算,但无论我做什么,文本框都不会将文本更改为 567 欧元。
为什么!? :'(
非常简短的回顾:运行 jsfiddle -> 将文本更改为 123.0 -> 模糊 -> 为什么文本框不会更新为 €123?
【问题讨论】: