2016-08-08 24 views
0

試圖檢查一個複選框的值是否大於其他值。如果是,則啓用「添加」按鈕,如果沒有,則禁用它。如何檢查兩個選擇框是否被選中並且一個值比其他值大?

出於某種原因,它的行爲真的很奇怪:當我嘗試使用小數字(從0-8)時,它工作正常,但數字越大,它就會禁用該按鈕,即使該值比另一個更大。

我的猜測是我的選擇器在選擇兩個選擇框時是錯誤的。 如何檢查兩個選擇框是否被選中,並且一個值是否大於其他值?

代碼:

$('.ageSelect').on('change', function() { 

    var ageToVal = $("#ageTo").val(); 
    var ageFromVal = $("#ageFrom").val(); 
    console.log("from value is "+ageFromVal); 

    console.log("to value is "+ageToVal); 

    if(ageToVal <= ageFromVal){ 
     console.log("SMALLLER"); 
     $("#addChildAge").prop("disabled", true); 

    }else{ 
     console.log("BIGGGER"); 
     $("#addChildAge").prop("disabled", false); 
    } 
}); 


<div class="row"> 
    <div class="col-md-6"> 
     <div class="form-group"> 
      <select class="selectpicker ageSelect" data-live-search="true" id="ageFrom" name="ageFrom" data-bv-excluded="false"> 
       <optgroup class="userProfileAgeFrom"> 
        <option disabled selected value="defaultAge"> 
         Age from... 
        </option> 
       </optgroup> 
      </select> 
     </div> 
     <div class="form-group"> 
      <select class="selectpicker ageSelect" data-live-search="true" id="ageTo" name="ageTo" data-bv-excluded="false"> 
       <optgroup class="userProfileAgeTo"> 
        <option disabled selected value="defaultAge"> 
         Age to... 
        </option> 
       </optgroup> 
      </select> 
     </div> 
    </div> 
    <div class="col-md-2"> 
     <button type="button" id="addChildAge" name="addChildAge" class="btn btn-green"> 
      <i class="fa fa-plus" aria-hidden="true"></i> Lisa 
     </button> 
    </div> 
</div> 

小提琴是這裏https://jsfiddle.net/uv6133xm/

回答

1

轉換爲數字

var ageToVal = Number($("#ageTo").val()); 
var ageFromVal = Number($("#ageFrom").val()); 
+0

感謝的人!加工。 – raqulka

+0

@raqulka請將其標記爲已回答,如果這有幫助 –

+0

我會的。只需要等待11分鐘:) – raqulka

1

你需要比較之前解析值:

if(parseInt(ageToVal,10) <= parseInt(ageFromVal,10)){ 
+0

謝謝。這也是工作 – raqulka

相關問題