原来在VS2003中调用eWebEditor的代码如下:
<INPUT id="Hidden1" type="hidden" name="content1" runat="server"> <IFRAME id="eWebEditor1" src="ewebeditor/ewebeditor.htm?id=content1&style=coolblue" frameBorder="0" width="100%" scrolling="no" height="400"></IFRAME>
代码测试成功,没有任何问题!
可是把这段代码放到VS2005的ASPX页面中就出现了 oLinkField.value 为空或不是对象 的JS错误!
问题出现原因:
VS2005页面在解析后 <INPUT id="Hidden1" type="hidden" name="content1" runat="server"> 得到的控件名称不是 content1
eWebEditor 没有找到 ewebeditor/ewebeditor.htm?id=content1&style=coolblue 中指定的content1控件,所以出错!
解决方法一:
把 <INPUT id="Hidden1" type="hidden" name="content1" runat="server"> 中的 runat="server" 删除,这样控件的名称不会被重命名!
后台用 Request.Form["content1"] 读取值!
解决方法二:
把<INPUT id="Hidden1" type="hidden" name="content1" runat="server"> <IFRAME id="eWebEditor1" src="ewebeditor/ewebeditor.htm?id=content1&style=coolblue" frameBorder="0" width="100%" scrolling="no" height="400"></IFRAME> 中的id=content1 改成 id=<%=content1.ClientID %>
以上为网络上解决办法,本人出现的问题是同一台电脑上,两个项目,用的都是eWebEditor ,一个项目没问题,而另一个就出现此问题,环境为vs2008+ie8,后来按上面方法二修改后解决此问题,希望别人遇到这样的问题看到此文能有所提示