0

テキストボックスに数値を入力し、それに基づいてテキストボックスにテキスト応答を入れるフォームを作成しようとしています。これは、私が機能させようとしてきたものの例です。

<html>
    <head>
        <script type="text/javascript">
            function calculate()
            {
                var ph = document.test.ph.value;
                if (ph > 7.45) {
                    var str = "Alkalosis";
                }
                else if (ph < 7.35) {
                    var str = "Acidosis";
                }
                else {
                    var str = "Normal";
                }
                document.test.acidalk.value = str;
            }
        </script>
    </head>
    <body>
        <form name="test">
            pH<input type="textbox" name="ph"><br>
            <input type="submit" value="Calculate"><br>
            <input type="textbox" id="acidalk" >
        </form>
    </body>
</html>

私が達成しようとしているのは、最初のテキスト ボックスに 7.45 より大きい数値を入力し、ボタンをクリックすると、2 番目のテキスト ボックスに「アルカローシス」という単語が入力されますが、数値が 7.45 未満の場合です。 7.35、単語は代わりに「アシドーシス」です。

どんな助けでも大歓迎です

4

4 に答える 4

0

jQuery の場合:

<html>
<head>
    <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
</head>

<body>pH
    <input type="textbox" name="ph" id="ph">
    <br>
    <button id="calculate">Calculate Acid Level</button>
    <br />
    <input type="textbox" id="acidalk" value="" />
</body>
<script type="text/javascript">
    $("#calculate").click(function () {
        var ph = $("#ph").val();
        if (ph > 7.45) str = "Alkalosis";
        else if (ph < 7.35) var str = "Acidosis";
        else var str = "Normal";

        $("#acidalk").val(str);
    });
</script>
</html>
于 2012-12-13T01:46:31.477 に答える
0

さて、あなたはそこまでの道のりです。ボタンを送信ボタンにする代わりに、試してください

<input type="button" onclick="calculate();" value="Calculate" />
于 2012-12-13T00:58:16.127 に答える
0

あなたのコードのベース これはそれを行う方法です:

<html>
<head>
    <script type="text/javascript">
        function calculate(){
            var ph = document.getElementById('ph').value;
            if(ph > 7.45){
                var str="Alkalosis";
            }else if(ph < 7.35){
                var str="Acidosis";
            } else{
                var str="Normal";
            }
            document.getElementById('acidalk').value =str;
        }
    </script>
</head>
<body>
    pH<input type="textbox" name="ph"><br>
    <button onclick="calculate()">Calculate</button>
    <input type="textbox" id="acidalk" >
</body>
</html>

希望が役立ちます!

于 2012-12-13T01:03:21.557 に答える
0

フォームと機能があり、それらを結び付ける方法が必要なだけです。calculate()フォームのイベントのイベント ハンドラーとして割り当てることによってそれを行いsubmitます。return falseそうしないとフォームが送信され、結果が表示されないことを確認してくださいcalculate()

<form name="test" onsubmit="calculate(); return false">

jsfiddle.net/UhJG2

submitボタンのイベントではなくフォームのイベントにバインドすると、が押されたclickときに関数が呼び出されるという利点があります。enterまた、フォームが誤って送信されないようにします。

于 2012-12-13T01:10:22.197 に答える