简单代码的jquery问题

时间:2010-04-25 06:15:41

标签: jquery

为什么此代码无效

    var name = $("#name").val();    
    var email = $("#email").val();
    var web = $("#web").val();
    var comment = $("#comment").val();


    if(name.length < 5){
        $("#name").css("border-color","red");
    } elseif (email.length < 5) {
        $("#email").css("border-color","red");
    } elseif (web.length < 5) {
        $("#web").css("border-color","red");
    } elseif (comment.length < 10) {
        $("#comment").css("border-color","red");         
    }else{

alert('ok');

}

和每个像这样<input id="name" type="text" size="24" />

的val

2 个答案:

答案 0 :(得分:5)

在javascript中,您的elseif需要else if,如下所示:

if(name.length < 5) {
    $("#name").css("border-color","red");
} else if (email.length < 5) {
    $("#email").css("border-color","red");
} else if (web.length < 5) {
    $("#web").css("border-color","red");
} else if (comment.length < 10) {
    $("#comment").css("border-color","red");         
} else {
    alert('ok');
}

答案 1 :(得分:1)

关于实际问题是什么的问题并不是很清楚,但我会提到在定义CSS时边框不仅仅是一种颜色 - 速记是这样的:

border: [size] [style] [color];

因此,如果您的元素最初没有边框粗细/样式,则在将颜色设置为红色时,实际上可能看不到任何内容。

试一试:

$("#name").css("border", "2px solid red");