<input id="sinput" name="a" value="" type="text"><a href="art.php?id=" target="_blank" id="asearch">查询</a>
    <script>
        document.getElementById("sinput").onchange = function(){
            var id = this.value;
            if(isNaN(id)) return;
            var url = document.getElementById("asearch").href;
            url = url + id;
            document.getElementById("asearch").href = url;
        }
    </script>请问用IE8为什么上面获取不到text输入的值,而用火狐却可以。
以前我记得用IE8也是可以的。现在突然就不行了。获取不到文本框输入的值了。
向高人求解。

解决方案 »

  1.   

    一般input type text的onchange事件的触发需要两个条件:1.输入框的值发生了改变;2.该文本框失去了焦点,而真正的事件的触发却是发生在该文本框失去焦点的时候,如果需要当值改变的时候就去触发,则需要用onpropertychange或者是oninput。在IE下,可以用onpropertychange来代替onchange事件,当文本框有任何变化时,能立即触发此事件.
    在其他浏览器下可以使用oninput事件来达到onpropertychange事件同样的效果 
      

  2.   

    晕,原来是,我在头部搞了个搜索,他的name=search,和上面那个重复了。