JavaScript:根据从 "text input"中选择的值启用/禁用 "select input"

标签 javascript jquery html

如果从选择输入中选择了“现金”支付,我写了这段代码来“禁用”文本输入。如果选择了“信用卡”付款,我还想“启用”文本输入。但我什至无法使用 JavaScript 完成启用。

<input type="text" readonly="true" class="credit_card_number" id="inputWarning" name="credit_card_number"/>

HTML:

<div class="control-group">
<label for="payment_type" class="control-label"><i class="icon-book"></i> Payment Type</label>
<div class="controls">
<select size="1" id="payment_type" name="payment_type" onchange="enableElements();">
    <option value="cash" id="cash" selected="selected">Cash</option>
    <option value="amex" id="credit_card">American Express</option>
    <option value="master" id="credit_card">Master Card</option>
    <option value="visa" id="credit_card">Visa</option>
</select>
</div>

JavaScript:

<script>
function enableElements()
{
document.getElementById('inputWarning').disabled=false;
}
</script>

最佳答案

FIDDLE HERE

这会起作用。但我建议从只读更改为 attr:disabled,我认为这对用户来说更清楚。在那种情况下检查here .

脚本/jQuery

function enableElements() {
if ($("#payment_type").val() == 'cash') {
    $("#inputWarning").prop('readonly', true);
    console.log('cash');
}

if ($("#payment_type").val() == 'amex' || $("#payment_type").val() == 'master' || $("#payment_type").val() == 'visa') {
   $("#inputWarning").prop('readonly', false);
    console.log('other');
}
};

关于JavaScript:根据从 "text input"中选择的值启用/禁用 "select input",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17464486/

相关文章:

javascript - React Hooks Clock - 在特定时间后清除 SetInterval

javascript - 都使用 ajax 提交数据并加载消息

java - Spring MVC 4 AJAX上传带有额外参数的MultipartFile

Jquery 自定义函数不在 ajax 加载的内容上定位 div

Javascript 积分计算器无法正常工作(HTML 选择/选项 + Javascript)

javascript - 查找此表达式的正则表达式(javascript)

javascript - 使用照片框架创建 slider

html - 并排显示的两个表格的 TD 高度相同

html - 使用 LESS 创建智能实用程序填充和边距类?

javascript - 如何计算 HTML 元素内容的可见高度和宽度?