只有一次Javascript调用函数

时间:2014-03-10 22:53:35

标签: javascript jquery html html5

我创建了一个单选按钮,用户可以在其中选择公制单位或英制单位。 以下代码是事件处理程序:

var metricRadio = document.getElementById("metric");
var imperialRadio = document.getElementById("imperial");

metricRadio.addEventListener("click", toMetric, false);

imperialRadio.addEventListener("click", toImperial, false);

当用户单击Metric单选按钮时,将调用函数toMetric。在函数toMetric中,我将用户在Imperial中输入的内容转换为Metric,并使用Metric值更新输入框。问题是如果选择了Metric并再次单击Metric单选按钮,则再次调用函数toMetric。如何在选择“度量标准”单选按钮时阻止调用toMetric函数。

您可以在此测试我的意思:JSFiddle

只需输入3个值,然后多次单击“公制”或“英制”单选按钮。

2 个答案:

答案 0 :(得分:6)

请看:jsFiddle

我用过"改变"而不是"点击":

metricRadio.addEventListener("change", toMetric, false);

imperialRadio.addEventListener("change", toImperial, false);

答案 1 :(得分:2)

您应该添加一个包含当前状态(公制或英制)的变量,而不是尝试只调用一次函数(您可以设置一个变量),并在函数中使用if条件测试当前状态< / p>