javascript - 使用 JavaScript 启用/禁用文本框和按钮

标签 javascript disabled-input

我正在学习 JavaScript,需要在完成 for 循环并显示 future 值后禁用文本框(年利率)。我还需要修改clear_click事件,以便在单击清除按钮时启用文本框,这是我的代码:

var $ = function (id) {
return document.getElementById(id);
}

var calculate_click = function () {
var investment = parseFloat( $("investment").value );
var annualRate = parseFloat( $("rate").value );
var years = parseInt( $("years").value );

$("futureValue").value = "";

if (isNaN(investment) || investment <= 0) {
    alert("Investment must be a valid number\nand greater than zero.");
} else if(isNaN(annualRate) || annualRate <= 0) {
    alert("Annual rate must be a valid number\nand greater than zero.");
} else if(isNaN(annualRate) || annualRate >= 20) {
    alert("Annual rate must be a valid number\nand less than twenty.");
} else if(isNaN(years) || years <= 0) {
    alert("Years must be a valid number\nand greater than zero.");
} else if(isNaN(years) || years >= 50) {
    alert("Years must be a valid number\nand less than fifty.");    
} else {
    var monthlyRate = annualRate / 12 / 100;
    var months = years * 12;
    var futureValue = 0;

    for ( i = 1; i <= months; i++ ) {
        futureValue = ( futureValue + investment ) *
            (1 + monthlyRate);
    }
    $("futureValue").value = futureValue.toFixed(2);
} 
}

var clear_click = function () {
$("investment").value = "";
$("rate").value = "";
$("years").value = "";
$("futureValue").value ="";
}
window.onload = function () {
$("calculate").onclick = calculate_click;
$("investment").focus();
$("clear").onclick = clear_click;
}

最佳答案

您可以使用 JQuery:

$('#textbox').attr('disabled', 'disabled');

并再次启用它:

$('#textbox').removeAttr("disabled");

或者使用纯 JavaScript:

禁用:

document.getElementById("textboxId").setAttribute("disabled", "disabled");

启用:

document.getElementById("textboxId").removeAttribute("disabled"); 

关于javascript - 使用 JavaScript 启用/禁用文本框和按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28097874/

相关文章:

javascript - Canva 图像有时不使用 drawImage() 方法显示图像?

php - Yii2:如何禁用或只读 Select2 小部件?

html - CSS:如何更改特定禁用字段的字体颜色?

css - 在 Jquery Mobile 中禁用的输入字段不使用 CSS 更改文本颜色

javascript - 如何将 createHmac 从 Node 转换为 C#?

javascript - NPM 不再工作

javascript - 如何将 ngChange 保存在本地存储中

javascript - 如何在 KeyStone.js 中显式创建新用户

javascript - 如何禁用提交按钮,直到所有文本字段都已满并选择了文件

javascript - 有什么原因,为什么 HTML 表单中的禁用字段仍然可以传输?