无法在jquery中使用css属性

时间:2014-09-09 07:44:33

标签: jquery

我有一个文本框,当页面加载时值为0,我想要在任何数字框中有0值,我希望在页面加载时更改其背景颜色。

我想只使用jquery来做。

我的代码无效,请找到下面的演示链接并提出错误建议。

http://jsfiddle.net/ph43cuhj/1/

以下是我的代码:

$(document).ready(function(){
    if($("input:text").val()=='0')
        $(this).css('background-color','#c0c0c0');
});

4 个答案:

答案 0 :(得分:2)

使用

$(document).ready(function () {
    $("input:text").change(function () { //Bind change vent
        if ($(this).val() == '0') {
            $(this).css('background-color', '#c0c0c0');
        }else{
            $(this).css('background-color', '');
        }
    }).change(); //Trigger initally
});

DEMO

答案 1 :(得分:1)

试试这个:

$(document).ready(function(){
  $('input[type="text"]').each(function(){
    if( $(this).val() == '0' )
    { 
       $(this).css('background-color','#c0c0c0'); 
    }
  });
});

DEMO

编辑: -

或试试这个:

$(document).ready(function(){
    $('input:text').each(function(){
        if( $(this).val() == '0' )
        { 
           $(this).css('background-color','#c0c0c0'); 
        }
    });
});

DEMO

答案 2 :(得分:0)

更紧凑:

$(document).ready(function () {
    $('input[type="text"][value="0"]').each(function () {
         $(this).css('background-color','#f00'); 
    });
});

答案 3 :(得分:0)

for(i=0;i<$("body").find("input:text").length;i++)
 {
   var el=$("body").find("input:text").eq(i);
   if(el.val()==0){  el.css('background-color', '#c0c0c0');   }
   else  { el.css('background-color', '#000000');    }
}

在文档就绪函数中尝试此代码