今天在写ASP.NET的一个网页,需要使用DropDownList的OnSelectedIndexChanged的事件来触发网页内容的改变,结果完成后,启动IE调试,IE产生Javascript错误,错误的语句是ASP.NET自动生成的,错误语句为
theForm.submit();
我百思不得其解,因为编译没有错误,HTML也没有错误,在一个空的ASP.NET网页上,只做一个DropDownList控件,结果完全可以,server端可以接受到发回的事件。
由此看来,是那个网页出了问题,使自动生成的Javascript产生了错误,那是什么错误呢?
经过一个多小时的试验,才发现,原来我的那个网页上有一个Button控件,其ID让我写成了submit,如下:
<asp:button ID="submit" runat="server" Text="提交" />
原来是它的ID和form的submit方法冲突了,IE的Javascript解释器就不认识原来的submit方法了,修改了这个button的ID为别的名字后,问题就解决了,看来IE的Javascript解释器还是有些问题,其实同名的方法和对象还是可以分开的吗。
希望以后我不要再犯这样的低级失误了。