【发布时间】:2012-01-12 10:47:54
【问题描述】:
我有两个文本字段,一个代表百分比,第二个代表相应的金额。现在我想要的是,当百分比改变时,金额应该改变,当金额改变时,百分比应该相应改变。我正在使用 JavaScript。
在这种情况下,如果其中任何一个发生变化,就会开始无限循环。
我想要的是,当金额发生变化时,它应该相应地改变百分比,然后循环应该停止。当百分比变化时,它应该相应地改变数量,然后循环应该停止。有什么办法吗?也许像stopPropagation 之类的?
虚拟 JS 代码:
这里value是一个文本框,percentage是另一个文本框
function valueChng(){
percentage.value = "" + someInteger;
}
function percentageChng(){
value.value = "" + someInteger;
}
谢谢!!
【问题讨论】:
-
您如何处理更改事件?通常,通过 JS 设置字段值不会触发“更改”事件,因此不应导致无限更改事件循环。
-
你能发布一些代码或小提琴吗?您的问题的解决方案取决于您如何更改内容以及您正在收听的事件。
-
@WTK 添加了一个虚拟代码。
-
@kanishk - 查看 Simon 的响应 - 正如您从他提供的小提琴中看到的那样 - 只需通过代码更改字段的值不会触发“更改”事件。您必须在代码的其他地方做错事(例如多次手动调用 valueChng / percentageChng 函数)。
标签: javascript events event-handling onchange