2017-10-18 93 views
-1

您能告訴我我在這裏做了什麼錯嗎?通過選擇禁用輸入字段

我想禁用輸入字段時,選擇使用第二個選項(Treibstoffverbrauch在升)。

$(document).ready(function() { 
 
    $('select[name="Kalkulationsart"]').on('change', function() { 
 
    var eins = $(this).val(); 
 
    if (eins == "Kalkulation per Treibstoffverbrauch in Liter") { 
 
     $('#VerbrauchinL').attr('disabled', 'disabled'); 
 
    } else { 
 
     $('#VerbrauchinL').removeAttr('disabled'); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="KATitle">Kalkulationsart</p> 
 
<select name="Kalkulationsart" id="Kalkulationsart" size="1" type="text"> 
 
    <option value="0">Kalkulation per Verbrauch/100km</option> 
 
    <option value="others">Kalkulation per Treibstoffverbrauch in Liter</option> 
 
</select> 
 
<p id="KMTitle" for="VerbrauchinL">Kraftstoffverbrauch in Liter/100km</p> 
 
<input type="number" name="Verbrauch in L" id="VerbrauchinL" onkeyup="TKPJ()">

+0

'eins'可能是「0 「或」others「,試着比較'eins!=」0「' – diynevala

回答

0

當您使用$(this).val()它返回option元素的value屬性。因此,您需要將其與0others進行比較。

請參見下面的代碼片段:比你比較反對什麼

$(document).ready(function() { 
 
    $('select[name="Kalkulationsart"]').on('change', function() { 
 
    var eins = $(this).val(); 
 
    console.log(eins); 
 
    if (eins == "others") { 
 
     $('#VerbrauchinL').attr('disabled', 'disabled'); 
 
    } else { 
 
     $('#VerbrauchinL').removeAttr('disabled'); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="KATitle">Kalkulationsart</p> 
 
<select name="Kalkulationsart" id="Kalkulationsart" size="1" type="text"> 
 
       \t \t \t \t \t <option value="0">Kalkulation per Verbrauch/100km</option> 
 
       \t \t \t \t \t <option value="others">Kalkulation per Treibstoffverbrauch in Liter</option> 
 

 
       \t \t \t \t </select> 
 

 
<p id="KMTitle" for="VerbrauchinL">Kraftstoffverbrauch in Liter/100km</p> 
 
<input type="number" name="Verbrauch in L" id="VerbrauchinL" onkeyup="TKPJ()">

0

select值是不同的(others)。

$(document).ready(function() { 
 
    $('#Kalkulationsart').on('change', function() { 
 
    $('#VerbrauchinL').prop('disabled', $(this).val() == "others"); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="KATitle">Kalkulationsart</p> 
 
<select name="Kalkulationsart" id="Kalkulationsart" size="1" type="text"> 
 
    <option value="0">Kalkulation per Verbrauch/100km</option> 
 
    <option value="others">Kalkulation per Treibstoffverbrauch in Liter</option> 
 
</select> 
 

 
<p id="KMTitle" for="VerbrauchinL">Kraftstoffverbrauch in Liter/100km</p> 
 
<input type="number" name="Verbrauch in L" id="VerbrauchinL" onkeyup="TKPJ()">

0

您的代碼似乎罰款,你需要檢查的複選框(others)不使用標籤(Kalkulation per Treibstoffverbrauch in Liter)的值。

我更改屬性disabled應用方式,我們可以truefalse之間切換,申請/取消套用屬性。

$(document).ready(function() { 
 
    $('select[name="Kalkulationsart"]').on('change', function() { 
 
    var eins = $(this).val(); 
 
    if (eins === "others") { 
 
     $('#VerbrauchinL').attr('disabled', true); 
 
    } else { 
 
     $('#VerbrauchinL').attr('disabled', false); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<p id="KATitle">Kalkulationsart</p> 
 
<select name="Kalkulationsart" id="Kalkulationsart" size="1" type="text"> 
 
    <option value="0">Kalkulation per Verbrauch/100km</option> 
 
    <option value="others">Kalkulation per Treibstoffverbrauch in Liter</option> 
 
</select> 
 
<p id="KMTitle" for="VerbrauchinL">Kraftstoffverbrauch in Liter/100km</p> 
 
<input type="number" name="Verbrauch in L" id="VerbrauchinL" onkeyup="TKPJ()">

+0

@Marcel這對你有幫助嗎? –

0

變化 「每1L Treibstoffverbrauch Kalkulation」,以 「人」 如果您提供的選項VAL()的值賦予值