2016-07-30 126 views
1

我需要實現以下目標:變化值輸入

我有2個下拉菜單的形式爲一個手機維修店的網站。 一個下拉菜單被稱爲「手機型號」,另一個「失敗類型」。

我需要拿出一個價格後,我結合這些2選擇。 它不一定必須立足於選擇的實際值: 它基本上是這樣的:

我怎麼可以這樣做:什麼,我需要做的

if 
Phone model = "iPhone 6", 
failure type = "cracked screen" 
print the value 200 somewhere. 

OR 

Phone model = "iPhone 4" 
failure type = "cracked screen" 
print the value 50 somewhere. 

例那?

+0

是的,這是可能的。 – Polyov

+0

我該怎麼做到這一點! –

+1

你問是否有可能! –

回答

0

嘗試一些事情是這樣的:

獲取第一和第二下拉值,然後把支票上這兩個值一樣的:

if(val != '' && val2 != ''){ 
    if(val1 = 'text1' && val2 == 'text2'){ 
     document.getElementById('amount') = '50'; // will put the amount to textbox 
    } 
} 
+0

嗨!我現在就試一試,讓你知道它是怎麼回事! –

+0

所以我做到了這一點,但它不起作用,我不知道是否必須指定我在某處說的是哪種形式,或者我不明白該腳本?

+0

粘貼HTML和JS代碼 –

0

你可以像這樣做,

例子是在jQuery中,但你可以通過原始的JavaScript來做同樣的事情。

HTML,

<label>Model</label> 
<select id="select-model" data-toggle="price-update"> 
    <option value="iphone4">Apple iPhone 4</option> 
    <option value="iphone5">Apple iPhone 5</option> 
</select> 

<label>Failure Type</label> 
<select id="select-issue" data-toggle="price-update"> 
    <option value="cracked-screen">Cracked Screen</option> 
    <option value="bricked-os">Bricked OS</option> 
</select> 

<label>Price</label> 
<input id="price" vlaue="" /> 

JS,

$('[data-toggle=price-update]').each(function(){ 
    $(this).change(function(){ 
    var model = $('select#select-model option:selected').val(), 
     issue = $('select#select-issue option:selected').val(), 
     input = $('#price'); 

    switch(model) { 
     case 'iphone4': 
      if(issue == 'cracked-screen'){ 
      input.val('$ 10.00'); 
      } 
      if(issue == 'bricked-os'){ 
      input.val('$ 20.00'); 
      } 
      break; 
     case 'iphone5': 
      if(issue == 'cracked-screen'){ 
      input.val('$ 30.00'); 
      } 
      if(issue == 'bricked-os'){ 
      input.val('$ 40.00'); 
      } 
      break; 
    } 
    }); 
}); 

見例如:https://jsfiddle.net/ey7tt3yp/


而且它,如果你不喜歡這種更清潔的,所以,你可以有許多像這樣的組合。

JS,

var data = { 
    "iphone4": { 
     "cracked-screen": "10.00", 
     "bricked-os": "20.00" 
    }, 
    "iphone5": { 
     "cracked-screen": "30.00", 
     "bricked-os": "40.00" 
    } 
} 

$('[data-toggle=price-update]').each(function(){ 
    $(this).change(function(){ 
    var model = $('select#select-model option:selected').val(), 
     issue = $('select#select-issue option:selected').val(), 
     input = $('#price'); 

    input.val('$ ' + data[model][issue]); 
    }); 
}); 

見例如:https://jsfiddle.net/ey7tt3yp/3/

希望這有助於! :)