晕,Microsoft搞什么鬼,自定义控件问题。。。

wnglish 2003-01-27 12:06:31
我重写CreateChildControls()函数,在该函数里面实力化一个TextBox控件,然后在javascript里面处理,而CreateChildControls()重写后子控件命名规律是Webcontrol1:_ctl1,该命名正好是js不认的,也就是在js里面会出错,my god。。。,那位高手能帮下忙????

protected override void CreateChildControls()
{
base.Controls.Clear();
System.Web.UI.WebControls.TextBox txt=new System.Web.UI.WebControls.TextBox();
//txt.Visible=false;
txt.ClientID=txt.ClientID.ToString();
this.Controls.Add(txt);
//Controls.Add(new LiteralControl(str_Js.Replace("{0}",txt.UniqueID.ToString()))); // html[0]
string str_S=str_Js;
if (this.Text!=null)
{
str_S=str_S+"<script>sel = idEdit.document.selection.createRange();sel.pasteHTML(document.forms(0)."+txt.ClientID.ToString()+".value);</script>"; // js脚板
}
Controls.Add(new LiteralControl(str_S.Replace("{0}",txt.UniqueID.ToString()))); // html[0]
}
...全文
20 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fly_miss 2003-09-20
  • 打赏
  • 举报
回复
同意 webdiyer(陕北吴旗娃)
webdiyer 2003-09-20
  • 打赏
  • 举报
回复
去掉这句 : txt.ClientID=txt.ClientID.ToString();
加上一句:txt.ID="mybox";

str_S=str_S+"<script>sel = idEdit.document.selection.createRange();sel.pasteHTML(document.forms(0)."+txt.ClientID.ToString()+".value);</script>"; // js脚板
这句中的 txt.ClientID.ToString()中的ToString()去掉。
softye 2003-09-20
  • 打赏
  • 举报
回复
UP

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧