2

这是一个简单的问题,我是 javascript 新手,但我还没有找到任何可以帮助解决此问题的现有答案:

我从一个简单的计算器开始,它将一个单位,音分(音符频率差的音乐单位)转换为小数。

<html>

    <head>
        <script language="JavaScript">
            function tun(form) {
                var i = parseFloat(form.Cents.value, 10);
                var o = 0;
                p = i / 3986.313714
                o = Math.pow(10, p)

                form.Decimal.value = o;
            }
        </script>
    </head>

    <body>
        <FORM>Cents:
            <INPUT NAME="Cents" VALUE="0" MAXLENGTH="15" SIZE=15>
            <p>Click to Convert
                <INPUT NAME="calc" VALUE="Calculate" TYPE=BUTTON onClick=tun(this.form)>
                <p>Decimal:
                    <INPUT NAME="Decimal" SIZE=15>
        </FORM>
    </body>

</html>

现在我想将其更改为多种类型的单位的转换器,使用 Decimal 作为中间人。我希望可以从下拉菜单中选择“输入单元”和“输出单元”。

这是我到目前为止的位置:

<html>

    <head>
        <script language="JavaScript">
            function tun(form) {
                var i = parseFloat(form.Cents.value, 10);
                var o = 0;
                p = i / 3986.313714
                o = Math.pow(10, p)
                form.Decimal.value = o;
            }
        </script>
        <script>
            function selectedunit() {
                var mylist = document.getElementById("InputList");
                document.getElementById("units").value = InputList.options[mylist.selectedIndex].text;
            }
        </script>
    </head>

    <body>
        <form>Select units to convert from:
            <select id="InputList" onchange="selectedunit()">
                <option></option>
                <option>Cents</option>
                <option>Savarts</option>
                <option>Jots</option>
                <option>Merides</option>
            </select>
            <p>Selected Units:
                <input type="text" id="units" </p>
                <br>Cents:
                <INPUT NAME="Cents" VALUE="0" MAXLENGTH="15" SIZE=15>
                <p>Click to Convert
                    <INPUT NAME="calc" VALUE="Calculate" TYPE=BUTTON onClick=tun(this.form)>
                    <p>Decimal:
                        <INPUT NAME="Decimal" SIZE=15>
        </FORM>
    </body>

</html>

所以我希望能够选择任何输入单位和任何输出单位,然后输入一个值并计算出来 - 有点像货币转换器

有什么帮助吗?

吉姆

4

1 回答 1

0

尝试制作两个不同的 javascript 函数

  1. AnyUnitToDecimalConverter() 函数
  2. DecimalToAnyUnitConverter() 函数

现在假设您需要从 X 单位转换为 Y 单位:调用 AnyUnitToDecimalConverter(valueX),这将为您提供十进制答案,例如 AnsDecimal,现在调用 DecimalToAnyUnitConverter(AnsDecimal);

于 2013-09-01T18:17:34.647 回答