有高手在么,关于web页面中textbox获取焦点的问题.在线等
jzhan 2009-07-04 05:53:20 目前的情况是,在一个web页面中有2个textbox,1个datagrid,label若干.
要使用条码扫描枪将一个序列号扫描进第二个textbox之后自动将用户名+序列号加到datagrid中.
条码扫描枪的设定是自带回车换行字符的.
环境是.net 1.1, asp.net, vb.net, iis 5.1
在代码中有
Private Sub SetFocus(ByVal FocusControl As Control)
Dim Script As New System.Text.StringBuilder
Dim ClientID As String = FocusControl.ClientID
With Script
.Append(" <script language='javascript'>")
.Append("document.getElementById('")
.Append(ClientID)
.Append("').focus();")
.Append(" </script>")
End With
RegisterStartupScript("setFocus", Script.ToString())
End Sub
用来设定控件的焦点.
txtUserName是在用户登录时自动填用户名的,这个没什么问题
txtSN 在txtSN.TextChanged事件的最后写了以下的代码
Call SetFocus(txtSN)
作用是在完成了在datagrid中添加记录之后给自己设置焦点.
这个页面在localhost中执行和调试的时候一切都是正常的,但是在把页面放到iis server上去之后,
往datagrid中添加记录是正常的,但是却不能在txtSN上设置焦点.
发生一个奇怪的问题,在第一次扫描条码后datagrid中有记录被添加txtSN失去焦点,然后再去扫描一次条码(这时焦点不知道在哪里),焦点又会回到txtSN.
页面上除了txtSN意外所有的空间tabindex=0, txtSN.tabindex=1
本机和iis server上的设定也是一样的.
本机是IE 7.0
放到IIS Server上去后用来测试的客户端IE还是7.0
并且2台机器上的IE 7.0都恢复了默认设置(option->advance->reset,就是恢复成了IE 7安装后的设置)
有没有哪位高手能帮忙看看,在线等