2017-05-05 45 views
-1

好吧,我試圖根據另一個表單字段的值設置一個表單字段的值。這是我迄今爲止的代碼,不知道爲什麼它不能正常工作......週五要愛!笑jquery if else語句 - 我在做什麼錯?

var $j = jQuery.noConflict(); 
var $price = 100; 
var $price2 = 75; 
var $price3 = 50; 
var $price4 = 25; 
$j(function() { 
    $j(document).ready(function() { 
     $j('.addon-custom-price').val(4); 
    }); 
    $j('.qty').change(function() { 
     var $this = $j(this); 
     if ($this.val() > 100 || $this.val() <= 153) { 
      $j('.addon-custom-price').val((parseFloat($price4 /$this.val()))); 
     } 
     else if ($this.val() > 70 || $this.val() <= 100) { 
      $j('.addon-custom-price').val((parseFloat($price3 /$this.val()))); 
     } 
     else if ($this.val() > 40 || $this.val() <= 70) { 
      $j('.addon-custom-price').val((parseFloat($price2 /$this.val()))); 
     } 
     else if ($this.val() > 24 || $this.val() <= 40) { 
      $j('.addon-custom-price').val((parseFloat($price /$this.val()))); 
     } 
     else { 
      $j('.addon-custom-price').val((parseFloat(0); 
     } 
    });   
}); 

任何幫助深表感謝:)

+0

也許使用'$(this)'代替'$ this' – Gerardo

+1

它怎麼不工作?輸出是什麼,它與你的期望有什麼不同? –

+1

我們在這裏談論什麼樣的「不工作」?錯誤味精或錯誤的行爲請。 – James

回答

0

第二次看我的代碼,我發現了以下錯誤:

當設置爲.addon定製價格字段中的值用下面的代碼片段,我parseFloat數學失蹤這可能引起了一些語法錯誤

$j('.addon-custom-price').val((parseFloat($price /$this.val()))); 

他們應該看起來像下面這樣的空間:

$j('.addon-custom-price').val((parseFloat($price/$this.val()))); 

其他錯誤,我發現在我結束ELSE聲明:

$j('.addon-custom-price').val((parseFloat(0); 

這是不正確,不知道爲什麼我做到了,但我沒有笑它應該只是簡單地爲以下幾點:

$j('.addon-custom-price').val(0); 
+0

這不回答關於'if/else'的問題。 – Barmar

+0

嗨,Russ,你應該編輯你的問題來添加更多細節。與其他網站不同,這裏的答案是*只*發佈問題的解決方案。 – brasofilo