2017-10-18 94 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()的值赋予值