如果所有texbox都没有值,我有一些程序可以防止服务器端操作。
我想为texbox分配颜色,以防万一没有添加值。

这不符合我的预期。

var txtName = document.getElementById("MainContent_txtName").value;
var txtSurname = document.getElementById("MainContent_txtSurname").value;
var txtContact = document.getElementById("MainContent_txtContactNumber").value;
var txtEmail = document.getElementById("MainContent_txtEmail").value;
var txtMessage = document.getElementById("MainContent_txtMessage").value;

var fields = new Array(txtName, txtSurname, txtContact, txtEmail, txtMessage);
var tot = 0;
for (var i = 0; i < fields.length; i++) {

    if (fields[i] == "") {
        fields[i].style.backgroundcolor = '#FEF5CA';
        tot++;
    }
    else {
        fields[i].style.backgroundcolor = "white";
    }

}
if (tot > 0) {
    return false;
}
return true;


问候

最佳答案

问题是您正在创建一个值数组,您需要元素本身:

var txtName = document.getElementById("MainContent_txtName");
var txtSurname = document.getElementById("MainContent_txtSurname");
var txtContact = document.getElementById("MainContent_txtContactNumber");
var txtEmail = document.getElementById("MainContent_txtEmail");
var txtMessage = document.getElementById("MainContent_txtMessage");

var fields = [txtName, txtSurname, txtContact, txtEmail, txtMessage];
var tot = 0;
for (var i = 0; i < fields.length; i++) {

    if (fields[i].value == "") {
        fields[i].style.backgroundColor = '#FEF5CA';
        tot++;
    }
    else {
        fields[i].style.backgroundColor = "white";
    }

}
if (tot > 0) {
    return false;
}
return true;


您必须将backgroundcolor更改为backgroundColor并将.value添加到if检查中。

关于javascript - 在JavaScript中使用for循环遍历文本框值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17551466/

10-10 21:44