2013-09-27 61 views
0

我正在嘗試使用來自用戶的輸入進行一些簡單的計算。輸入文字在輸出動態文本字段中給出NaN

我有兩個輸入字段,一個按鈕和一個用於顯示結果的動態文本字段。 我想要的是用戶在第一個字段中編寫一個數字,然後在下一個字段中輸入百分比。然後他/她將單擊該按鈕,並在結果字段中顯示正確的計算數字。

我使用的按鈕下面的代碼:

on (release){ 

var revenue:Number =input1_txt.text; 
var revenuegrowth:Number = input2_txt.text; 
var growth:Number =revenue * revenuegrowth/100; 

} 

的問題是,它不會工作,我第一次單擊按鈕。它只在結果字段中與NaN結合 - 不是數字。 (在第二次點擊按鈕,它工作得很好)

任何想法如何使它在第一次點擊也工作?

回答

0

嘗試將您的輸入轉換爲數字

更新:新增input3_txt命名,顯示結果或錯誤消息和測試,以檢查是否輸入值是數字的另一個領域:

on (release){ 
    var revenue:Number = Number(input1_txt.text); 
    var revenuegrowth:Number = Number(input2_txt.text); 
    if (isNaN(revenue) ===false & isNaN(revenuegrowth) ===false) { 
    var growth:Number =revenue * revenuegrowth/100; 
    input3_txt.text = growth + '%' 
    } else { 
    input3_txt.text = 'Error'; 
    } 
} 
+0

感謝。但沒有奏效。然後,我不僅第一次點擊NaN,而且第二次也是。也許我需要一些模擬第一次點擊的循環? – user2823517

+0

如果input1_txt或/和input2_txt不包含數字,那麼它會起作用。 – RafH

0

我它通過在同一次點擊中重複兩次代碼來工作。可能不是最好的soultuion,但至少它的工作原理:

on (release){ 

var revenue:Number =input1_txt.text; 
var revenuegrowth:Number = input2_txt.text; 
var growth:Number =revenue * revenuegrowth/100; 
var revenue:Number =input1_txt.text; 
var revenuegrowth:Number = input2_txt.text; 
var growth:Number =revenue * revenuegrowth/100; 

}