我试图在ListView中使用Ajax Toolkit的HTML编辑器,但不幸的是,当我这样做时,它不会渲染工具栏。实际上,Javascript似乎没有初始化。如果我在同一页面上将ListView之外的编辑器标签移动它。
<asp:ListView runat="server" ID="lstValues">
<LayoutTemplate>
<tr runat="server" id="itemPlaceholder" />
</LayoutTemplate>
<ItemTemplate>
<tr>
<th>
<asp:HiddenField runat="server" Value='<%# Eval("ContentControlAttributeUID") %>'
ID="hidAttributeUID" />
<asp:Label runat="server" Text='<%# Eval("ContentControlAttributeName") %>' />
</th>
<td>
<ajaxToolkit:Editor ID="htmlValue" runat="server" Height="300px" Width="800px"/>
</td>
</tr>
</ItemTemplate>
</asp:ListView>
IE报告以下错误:
Webpage error details
用户代理:Mozilla / 4.0(兼容; MSIE 8.0; Windows NT 6.1; WOW64; Trident / 4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; HPNTDF; .NET4.0C; .NET4.0E) 时间戳:星期五,2010年8月13日18:18:36 UTC
消息:Sys.ArgumentNullException:值不能为null。 参数名称:元素 行:4868 查尔:12 代码:0 URI:http://localhost:53791/ScriptResource.axd?d=-CwDSaVoJV5wizpX17LGeWO_begkXaYUs_-h1AdeNqc_WMOXUiDMagM5BMZHVvgp0&t=ffffffffbd2983fc
答案 0 :(得分:1)
在我的情况下,问题是由于asp.net 4.0中引入的新客户端ID命名模式。我的网站设置为使用新的“可预测”模式,并将ListView设置为“AutoID”就可以了。再次尝试您的样品,但添加了以下属性:
<asp:ListView runat="server" ID="lstValues" ClientIDMode="AutoID">
祝你好运