找不到javascript错误

时间:2011-12-14 12:34:03

标签: javascript ajax jquery

我想添加新属性以选择名称和ID为'firm_id'的框。到目前为止,我已尝试使用此代码,它在mozila中工作正常但在IE中无效。

我用javascript做这个,因为选择框来自ajax。 函数sbmtfrm()没有在IE中调用。

错误:消息:'FB'未定义。

可能是FB是我的js lib文件中调用的对象,但现在我正在另一个单独的脚本标记中编写代码。

<script type="text/javascript">

    function sbmtfrm()
    {
       alert('now submitting...');
       document.frmsearch.submit();
    }

    function setOnclickAtt(name)
    {
        alert("'"+name+"'" + document.getElementById(name).getAttribute('onchange'));
        alert(document.getElementById(name));
        if(document.getElementById(name))
        {
            alert('attrr changed');
            var ref = document.getElementById(name);
            ref.setAttribute('onchange', 'sbmtfrm();');
            alert("now new atrr = " + document.getElementById(name).getAttribute('onchange'));
        }
        else
        {
            alert('again');
            setTimeout("setOnclickAtt('firm_id')",100);
        }
    }

    setOnclickAtt('firm_id');

</script>   

非常感谢任何建议或想法。

非常感谢。

1 个答案:

答案 0 :(得分:1)

我认为IE在事件处理方面很挑剔。尝试:

ref.onchange = sbmtfrm;

而不是:

ref.setAttribute('onchange', 'sbmtfrm();');

另外,我认为错误消息与此问题无关。这是错的,但这是另一个问题。