1

質問をより具体的にするために、これを再投稿しています。ここにある電卓を組み合わせようとしています: http://www.nhpta.com/over-tax-calculator.html

2 つの入力フィールドのいずれかに値が入力されているかどうかを認識し、Calculate または Calculate2 の 2 つの JS 関数のいずれかを実行できるように、計算ボタンを十分に賢くしたいと思います。両方のフィールドに値が入力されている場合は、代わりにボタンの代わりにエラーをスローしたいと思います。これは以下の私のコンセプトコードです.php変数を定義する方法も、各入力フィールドを見て値が入力されているかどうかを判断するように指示する方法もわかりません. 印刷が正しいかどうかもわかりませんか?

<?php
    $input_B   = "form field named input_B";
    $input_C  = "form field named input_C";

    if($input_B == 'has a value' && $input_C == 'has no value')
    { 
        print ' <P><INPUT TYPE="button" VALUE="Calculate" name="AddButton" onClick="Calculate(this.form.input_A.value, this.form.input_B.value, this.form.input_C.value, this.form)"></P>'; 
    } 
    elseif($input_C == 'has a value' && input_B == 'has no value' )
    { 
        print ' <P><INPUT TYPE="button" VALUE="Calculate" name="AddButton" onClick="Calculate2(this.form.input_D.value, this.form.input_E.value, this.form.input_F.value, this.form)"></P>';
    } 
    elseif ($input_C == 'has a value' && input_B == 'has a value')
    { 
        print ' Please choose only one field to fill in';
    } 
    else 
    {
        print ' <P><INPUT TYPE="button" VALUE="Calculate" name="AddButton" onClick="Calculate(this.form.input_A.value, this.form.input_B.value, this.form.input_C.value, this.form)"></P>';
    } // End if/else if
?> 
4

3 に答える 3

0

最初の if ステートメントは、次のように書き直す必要があります。

if(($input_B != "") && ($input_C == "")) 

その後、ロジックは他のものと同じです

于 2012-08-03T14:00:11.527 に答える
0

2 つの入力フィールドに (一意の!) ID がある限り、次のようなことができます。

var field0 = document.getElementById("field0id").value;
var field1 = document.getElementById("field1id").value;
if(field0 === ""){
    if(field1 !== ""){
        calculate();
    }else{
        //error
    }
}elseif(field1 === ""){
    calculate2();
}else{
    //error
}
于 2012-08-03T14:01:38.507 に答える