flash as3函数计算返回字符而不是空白

时间:2014-02-11 02:54:59

标签: actionscript-3 flash

我创建了一个公式表,基本上有1个输入字段,它将返回4个结果,还有一个计算按钮。 在正确的输入,正确的结果,我没有问题。 在空白输入上,结果应保持空白,并在底部显示错误消息。但是现在结果以某种方式返回了一个“a”,当正确的输入进入时,计算按钮不起作用。我的代码在下面,感谢建议。

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!";

    }
}

1 个答案:

答案 0 :(得分: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!";
    }
}