2012-04-16 55 views
-1

我想獲得一些關於將這個php轉換爲javascript的建議。你可以用一個開關在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> 
+1

從來沒有聽說過從PHP代碼轉換成Javascript代碼。 – Lion 2012-04-16 02:18:33

回答

1

有從PHP沒有直接轉化爲JavaScript,但當然使用在客戶端相同的算法是可能的。

我試圖用jQuery重寫JavaScript中的第一個案例。 Look here!

我是一個公制人,我無法理解這段代碼的作用和sch代表什麼。如果您正在嘗試進行轉換,最好是以數學方式進行,而不是使用數組。

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; 
} 
-1

多數民衆贊成如果即時猜測正確的,你想做什麼。我認爲你想做的事情,PHP的做,但你不想刷新頁面,我是嗎?所以我做了這個小東西給你,是你叫什麼「轉換爲JavaScript」

這裏是代碼

<html> 
<body> 

<script type="text/javascript"> 

function check() { 

var inchesval=document.getElementById('inches').value; 
var schval=document.getElementById('sch').value; 


switch (schval){ 

    case "40": 
     var inch={"1.5":1.610,"2.0":2.063,"2.5":2.469}; 
     var x; 

     for (x in inch) 
       { 
       if (inchesval==x) { 
            alert("Result = " + inch[x]); 
            }     

       } 

    break; 


    case "60": 
     var inch={"2.0":2.063}; 
     var x; 

     for (x in inch) 
       { 
       alert("Result = " + inch[x]); 
       } 
    break; 


    case "80": 
     var inch={"2.5":2.469}; 
     var x; 

     for (x in inch) 
       { 
       alert("Result = " + inch[x]); 
       } 
    break; 


default: 
    //dont change this line 
} 



} 

</script> 


<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="button" onclick="check()" value="update" id="process" /> 
</form> 

</body> 
</html> 

你可以使用文件撰寫(「一些文本」),而不是警告如果你想:)但我警覺你得到你想要的更好。你不需要jQuery或任何其他JavaScript框架與我的解決方案。但如果你想要的話,你可以做一些改變,而不是提醒你可以改變一個「p」標籤的innerHTML,結果是

+0

謝謝你的幫助。 – 2012-04-25 12:27:29

+0

也可以幫助我將此答案標記爲正確答案,我點擊「打勾」標誌 – 2012-04-26 15:40:31