我想添加新属性以选择名称和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>
非常感谢任何建议或想法。
非常感谢。
答案 0 :(得分:1)
我认为IE在事件处理方面很挑剔。尝试:
ref.onchange = sbmtfrm;
而不是:
ref.setAttribute('onchange', 'sbmtfrm();');
另外,我认为错误消息与此问题无关。这是错的,但这是另一个问题。