Jquery:计算音量

时间:2016-08-29 09:05:51

标签: javascript

从一个用户那里获取代码的基础并修改了一下。基本上它做我需要的 - 从三个值计算总和(前两个以米为单位,第三个以厘米为单位)。但我希望它更简单。我不需要"选择选项"在厚度字段中 - 必须以厘米为单位计算!。 第二个请求 - 金额必须在m 3

HTML:

<table>
    <tbody>
        <tr>
            <td>Width (m)</td>
            <td>
                <input type="text" id="width" />
            </td>
        </tr>
        <tr>
            <td>Length (m)</td>
            <td>
                <input type="text" id="length" />
            </td>
        </tr>
        <tr>
            <td>Thickness (cm)</td>
            <td>
                <input type="text" id="thickness" />
            </td>
            <td>
                <select id="sel">
                    <option>centemeter</option>
                    <option>meter</option>
                    <option>melemeter</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>Total (m<sup>3</sup>)</td>
            <td id="answer"></td>
        </tr>
    </tbody>
</table>

的javascript:

$("#width ,#length ,#thickness, #sel").on('change keyup keydown', function() {
    var width = $("#width").val();
    var length = $("#length").val();
    var thickness = $("#thickness").val();
    var result = width * length * thickness;
    var select_val = $("#sel").val();

    if (select_val == "centemeter") {
        $("#answer").text(result).append(" cm<sup>3</sup>");;
    } else if (select_val == "meter") {
        result = result / 100;
        $("#answer").text(result).append(" m<sup>3</sup>");;
    } else if (select_val == "melemeter") {
        result = result * 10;
        $("#answer").text(result).append(" mm<sup>3</sup>");
    }
});

jsfiddle

更新:我认为这将是一项简单的任务:计算三个数字的数量 - 类似var result = width * length * thickness; 厚度的宽度为1/100长度...

1 个答案:

答案 0 :(得分:0)

以下解答我的答案。并不复杂,是吗?

$("#width ,#length ,#thickness").on('change keyup keydown', function () {

            var width = $("#width").val();
            var length = $("#length").val();
            var thickness = $("#thickness").val();
            var result = width * length * thickness;
             result = result/100;
            $("#answer").text(result).append(" m<sup>3</sup>");;

        });

jsfiddle