UpdatePanel里获取焦点后输入法的问题!谢谢

talentmykaka 2009-02-14 03:26:04
请教:
把一个button和一个TextBox放在WEB页面中,用TextBox1.Focus();很正常,可以切换输入法并输入汉字,但只要把控件放在UpdatePanel里就不行了,使用TextBox1.Focus();或其他获取焦点的方法后,在TextBox1按CTRL+空格键,系统默认只按了空格,输入法切换不出来,就算用鼠标或其他的方法把输入法切换出来,也属于英文状态,不能输入汉字.这是为什么?
测试环境 : 打了.net PK2补丁,测试是新建的空白ASPX页面

我在网上找了一个语句
ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(UpdatePanel), "test", "setTimeout(\"document.getElementById('TextBox1').focus();\", 1);", true);

使用这个语句后,TextBox1这个控件被选中而不是获取焦点,为什么?我用的是VS2008 C#环境
...全文
440 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
mzcih 2009-10-08
  • 打赏
  • 举报
回复
怎么这么快就结贴了,真没解决办法吗?

另希望关注同样的问题。  http://topic.csdn.net/u/20090911/09/d2cd6be3-fca4-47e4-9627-ee5b33213e46.html

谢谢!
mzcih 2009-09-24
  • 打赏
  • 举报
回复
我也遇到此问题,关注此问题。
egg_1 2009-04-14
  • 打赏
  • 举报
回复
有结果了吗?有结果了吗?
egg_1 2009-03-24
  • 打赏
  • 举报
回复
我的问题一样一样一样滴!
怎么解决?
talentmykaka 2009-02-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jiejie526 的回复:]
打的补丁问题
[/Quote]

应该不是,我所有.NET的补丁应该都打了,还是一样的问题
无爱大叔 2009-02-20
  • 打赏
  • 举报
回复
是有这种问题,不过是在用了计时器(Timer)的时候才这样
一直没有好办法解决
jiejie526 2009-02-20
  • 打赏
  • 举报
回复
打的补丁问题
lee_b 2009-02-20
  • 打赏
  • 举报
回复
关注..确实无法切换输入法,,不知道什么原因
talentmykaka 2009-02-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 shuimuqiuer 的回复:]
(1)updatepanel的updatemodel为contitional:

textbox.Focus();
this.updatepanel1.update();

(2)如果updatepanel的updatemodel为alway:
直接 textbox.Focus();就可以了
[/Quote]

我一开始就是用得这种方法,只能获取焦点,但输入法被锁住了
秋儿-Angel 2009-02-14
  • 打赏
  • 举报
回复
(1)updatepanel的updatemodel为contitional:

textbox.Focus();
this.updatepanel1.update();

(2)如果updatepanel的updatemodel为alway:
直接 textbox.Focus();就可以了
水滴洞穿 2009-02-14
  • 打赏
  • 举报
回复
up
bj890 2009-02-14
  • 打赏
  • 举报
回复
up
koukoujiayi 2009-02-14
  • 打赏
  • 举报
回复
用了AJAX框架是会出现楼主所述情况,
唯一解决的方法就是不用AJAX!!
chenyijiu 2009-02-14
  • 打赏
  • 举报
回复
你那个updatepanel的updatemodel为contitional?那样的话,你设置了textbox.focus后要调用updatepanel的update方法才有效
talentmykaka 2009-02-14
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 shuimuqiuer 的回复:]
(1)updatepanel的updatemodel为contitional:

textbox.Focus();
this.updatepanel1.update();

(2)如果updatepanel的updatemodel为alway:
直接 textbox.Focus();就可以了
[/Quote]

以上2种方法我都测试了!没有用

62,073

社区成员

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

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

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

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