-1

この php を javascript に変換する方法について、いくつかの提案をしたいと思います。スイッチを使用してJavaScriptでこれを行うことはできますか?

この状況で JavaScript を使用して配列を処理する方法がわかりません。私はphpでは使用できず、javascriptのみです。

if(isset($_POST['process'])){ 
$sch = $_POST['sch'];
$inches = $_POST['inches'];

switch($sch){

        case "40":
            $inch = array("1.5"=>1.610,"2.0"=>2.063,"2.5"=>2.469);
                foreach($inch as $k =>$v){
                    if($inches == $k){
                        echo "Result =" . $v;
                    }
                }
        break;            
        case "60":
            $inch = array("2.0"=>2.063);
                foreach($inch as $k =>$v){
                    echo $v;
                }
        break;
        case "80":
            $inch = array("2.5"=>2.469);
                foreach($inch as $k =>$v){
                    echo $v;
                }
        break;



    }
}
?>
<form action="" method="post">
<select name="inches" id="inches">
  <option value="1.5">1.500</option>
  <option value="2.0">2.000</option>
  <option value="2.5">2.500</option>
  <option value="3.0">3.000</option>
</select>
<select name="sch" id="sch">
  <option value="40">sch 40</option>
  <option value="60">sch 60</option>
  <option value="80">sch 80</option>
  <option value="100">sch 100</option>
</select>
<input name="process" type="submit" value="Submit" id="process" />
</form>
4

2 に答える 2

1

PHP から JavaScript への直接変換はありませんが、もちろんクライアント側で同じアルゴリズムを使用することは可能です。

最初のケースをjavascriptでjqueryで書き換えてみました。ここを見て!

私は計量の専門家で、このコードが何をしているのか、sch が何を表しているのか理解できませんでした。変換を行おうとしている場合は、配列を使用する代わりに数学的に変換することをお勧めします。

于 2012-04-16T02:56:23.803 に答える
0
var sch = '',  // here assign value for sch
inches = ''; // here assign value for inches
switch (sch) {
case "40":
    inch = {
        "1.5": 1.610,
        "2.0": 2.063,
        "2.5": 2.469
    };
    $.each(inch,
    function(key, val) {
        if (inches == val) {
            console.log("Result =" + $v);
        }
    });
    break;
case "60":
    inch = {
        "2.0": 2.063
    };
    $.each(inch,
    function(key, val) {
        console.log("Result =" + $v);
    });
    break;
case "80":
    inch = {
        "2.5": 2.469
    };
    $.each(inch,
    function(key, val) {
        console.log("Result =" + $v);
    });
    break;
}
于 2012-04-16T03:05:11.487 に答える