[英]Call function only once Javascript
我創建了一個單選按鈕,用戶可以在其中選擇公制或英制單位。 以下代碼是事件處理程序:
var metricRadio = document.getElementById("metric");
var imperialRadio = document.getElementById("imperial");
metricRadio.addEventListener("click", toMetric, false);
imperialRadio.addEventListener("click", toImperial, false);
當用戶單擊“度量”單選按鈕時,將調用toMetric
函數。 在toMetric
函數中,我將用戶在Imperial中輸入的內容轉換為Metric,並使用Metric值更新輸入框。 問題在於,如果選擇了“度量標准”,然后他再次單擊“度量標准”單選按鈕, toMetric
再次調用toMetric
函數。 選擇“度量”單選按鈕時,如何防止調用toMetric
函數。
您可以在這里測試我的意思: JSFiddle
只需輸入3個值,然后多次單擊“公制”或“英制”單選按鈕。
看一下: jsFiddle 。
我使用“更改”而不是“點擊”:
metricRadio.addEventListener("change", toMetric, false);
imperialRadio.addEventListener("change", toImperial, false);
您應該添加一個包含當前狀態(公制或英制)的變量,並在您的函數中使用if條件測試當前狀態,而不是嘗試僅一次調用一個函數(您可以設置變量)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.