2014-02-11 42 views
0

我已經創建了一個公式表,基本上有1個輸入字段,將返回4個結果和一個計算按鈕。 就正確的輸入,正確的結果,我沒有問題。 在空白輸入上,結果應保持空白,並在底部顯示錯誤消息。但現在結果以某種方式返回了「a」,並且當正確的輸入在下面的「我的代碼」中時,計算按鈕不起作用,請欣賞建議。閃光as3函數計算返回字符,而不是空白

import flash.events.MouseEvent; 

calculate_btn.addEventListener(MouseEvent.CLICK,calculateClick); 
var inputNum:String; 
var tRes:Number; 
var mRes: Number; 
var sRes: Number; 
function calculateClick(event:MouseEvent):void{ 
    if (inputNum != ""){ 
    inputNum = inputTxt.text; 
    tRes = Math.round((parseInt(inputNum) * 10000/3600)*10)/10; 
    tRes.toString(); 
    tCal.text = String(tRes); 
    mRes = tRes * 20; 
    mCal.text = String(mRes); 
    sRes = mRes - 556; 
    sCal.text = String(sRes); 
    } else if (inputNum == "") { 
    tCal.text = ""; 
    mCal.text = ""; 
    sCal.text = ""; 
    warningTxt.text = "Error! Please input!"; 

    } 
} 
+0

因爲我不知道整個設置或manPowerRes是什麼,所以很難重新創建它。 「A」是小寫字母嗎?如果是這樣,你可能會看到NaN的一部分數學計算錯誤。你能提供更多信息嗎? –

+0

hello andrew,我編輯了上面的代碼。 manPowerRes實際上是mRes,我忘了在這裏更新。 它是一個小的「a」,只有當我沒有在inputTxt中輸入任何東西時纔會出現,並且只有當我再次點擊Calculate按鈕時纔會出現錯誤。那麼無論我在錯誤後輸入什麼,該按鈕都會停止其原始功能。 – tfcheng

回答

1

好的我認爲我有它的工作。我確實改變了「tRes = Math.round(inputNum * 10000/3600)」這一行的計算公式,但是您應該可以將其更改回原來沒有任何問題。

calculate_btn.addEventListener(MouseEvent.CLICK,calculateClick); 
var inputNum:Number; 
var tRes:Number; 
var mRes: Number; 
var sRes: Number; 
function calculateClick(event:MouseEvent):void{ 
    inputNum = Number(inputTxt.text); 
    if (!isNaN(inputNum)){ 
     tRes = Math.round(inputNum * 10000/3600) 
     tCal.text = String(tRes); 
     mRes = tRes * 20; 
     mCal.text = String(mRes); 
     sRes = mRes - 556; 
     sCal.text = String(sRes); 
     warningTxt.text = ""; 
    } else { 
     tCal.text = ""; 
     mCal.text = ""; 
     sCal.text = ""; 
     warningTxt.text = "Error! Please input!"; 
    } 
} 
+0

hello andrew,感謝您的建議! 我試過,它的工作原理,除了錯誤不會出現,現在當我離開輸入字段空白.. – tfcheng

+0

hello andrew,我試圖刪除!isNaN和它的工作,我認爲我需要什麼。非常感謝,你是一個很好的幫助! – tfcheng