<script>
window.onload=function(){
        var acc=document.getElementById('abc');
acc.onfocus=function(){
if(value=='搜索'){
this.style.color='#000'; value=' ';
}
}
acc.onblur=function(){
if(value==' '){
this.style.color='#ccc'; value='搜索';
}
}

</script>=============================html===========================
<div> <input id="abc" type="text" value="搜索"  />
</div>我想调取value 使其颜色改变IE调试  提示  “value”未定义   我该如何定义value  不知道该怎么写了
各位高手帮帮忙

解决方案 »

  1.   

    是没定义呀。<div>
     <input id="abc" type="text" value="搜索"  />
    </div>
    <script>
    var acc=document.getElementById('abc');
    console.log(acc);
    acc.onkeyup = function(a) {
      var value = this.value;
      alert(value)
    }
    </script>
      

  2.   

    或用下面的取value值也是一样的。<div>
     <input id="abc" type="text" value="搜索"  />
    </div>
    <script>
    var acc=document.getElementById('abc');
    console.log(acc);
    acc.onkeyup = function(e) {
      var value = e.target.value;
      alert(value)
    }
    </script>
      

  3.   

    把value全部改成this.value
      

  4.   

    把value全部改成this.value 或者  acc.value
      

  5.   


    window.onload=function(){
            var acc=document.getElementById('abc');
    acc.onfocus=function(){
    if(this.value=='搜索'){
    this.style.color='#000'; this.value='';
    }
    }
    acc.onblur=function(){
    if(this.value==''){
    this.style.color='#ccc'; this.value='搜索';
    }
    }
    }
      

  6.   

    js里的value是一个属性
    你这里直接用  if(value=='搜索') 或者 if(value==' ')判断是不行的,因为没有用到确定的对象或元素,所以会报value未定义错误
    可以加上this表示当前触发事件的对象,也就是acc,也就是id为abc的元素
    解决方法:
    用if(this.value=='搜索') 或者 if(acc.value==' ')
      

  7.   

    直接用肯定不行啊,你至少得告诉程序,你指的是谁的value