不起作用,中为控件设置焦点为何无效
分类:面向对象

前面怎样在 ASP.NET Web 服务器控件上设置要点,在 Firefox 中能够健康职业,而在 IE 中不经常却不能够健康干活,那是怎么吗?

趁着微软.NET的流行,ASP.NET越来越为科学普及开采人士所担任。作为ASP.NET的开荒人士,我们不但供给驾驭其基

有三个文本框,id 为 d,用上面的 js 代码,想让其得到主题。

有三个文本框,id 为 d,用下面包车型大巴 js 代码,想让其得到大旨。

那不是出于 ASP.NET 形成的,ASP.NET 生成的 JavaScript 也从未难题,而是由于 IE 对 JavaScript 解释区别产生的。

本的准绳,更要多多实行,从实行中获得真正的开辟本事。在大家的骨子里支出中,往往基本的规律满意不断开辟需

document.getElementById("d").focus();
结果代码在 IE 中不起功效,要让 IE 中也获取核心,得用雷同如下的代码:

document.getElementById("d").focus();

IE 中,网页上的 HTML 控件实际上都被映射为 Windows 控件,大旨不止有浏览器本身逻辑难题,也会有 Windows 控件宗旨,二者一同存在难点,所以常常出现设置要点无效的图景。

求,大家越来越多的要储存一些开荒工夫,本文就向大家介绍一些实用本事,希望对大家的支付具备裨益。

复制代码 代码如下:

结果代码在 IE 中不起成效,要让 IE 中也博得大旨,得用形似如下的代码:

针对展开页面时设置要点到某意气风发控件,消弭办法有两种。

  1. ~ 的用法

document.body.onload = function(){
document.getElementById("d").focus();
}

document.body.onload = function(){
    document.getElementById("d").focus();
};

  • 将代码放在 body 的 onload 事件中,<body onload="document.getElementById('controlId'卡塔尔国.focus(卡塔尔(قطر‎;">。
  • 对代码进行延时,setTimeout("document.getElementById('controlId'卡塔尔国.focus(卡塔尔;", 50卡塔尔(قطر‎;。

  日常的景观下,大家是使用./../ 那样的相对路线来规定和规划大家的能源(譬如图片、能源文件State of Qatar,但这种方

为 d,用上面包车型大巴 js 代码,想让其得到大旨。 document.getElementById("d").focus(卡塔尔; 结果代码在 IE 中不起功用,要让 IE 中也拿到核心...

也正是说,直接写 JavaScript 代码,不应用 ASP.NET 的装置要点的不二诀要和质量。

式下在大家安顿应用的时候,也许会出错,此外对于.ascx的控件中豆蔻年华旦带有了一个图片,而以此控件被我们在不

同等级次序的多个目录的aspx文件分别引用时,难题就能够并发了。

  ~/image/about.bmp

是一种相当好的主意,它以Web应用程序的根目录为起头点,这样使得比你使用./image/about.bmp那样的措施要更

加灵活和惠及。有一点点不好,是这种措施是在ASP.NET运转时动态剖析的,所以在IDE设计方式中,你或然无法预览

它。

  2. 在刷新和交给页面后,保存你的页面滚动条的岗位

  平日常有那样的图景,我们必要客户提交多少个表单,不过表单中有超过常规500+个?控件或文本框要填写,也正是说

顾客须要推动IE的滚动条技术够填得完,那么蓬蓬勃勃旦顾客正在可以看到IE范围的2/3处,接纳了叁个组合框的值,很颓丧

组合框是劳动器端的,那么也就象征页面会提交二次,而当客商再看到刷新过的页面时,页面分明在3/1的地点

也正是呈现在页面最最早的地点,客户唯有拖动鼠标,然后随着刚刚的地点再填写剩下的2肆十多个控件,很衰颓,370

个控件又需求他筛选一下?

  用下边包车型大巴方式能够便捷地规定和记住您提交前的职位。

  网络的Old Dog Learns New Tricks也会有二个好像的例证Maintain Scroll Position in any Page Element,

可是她接纳了Web Behavior那意味着你需求动用一个.htc文书

Private Sub RetainScrollPosition()

Dim saveScrollPosition As New StringBuilder
Dim setScrollPosition As New StringBuilder

RegisterHiddenField("__SCROLLPOS", "0")
saveScrollPosition.Append("<script language='javascript'>")
saveScrollPosition.Append("function saveScrollPosition() {")
saveScrollPosition.Append(" document.forms[0].__SCROLLPOS.value = document.body.scrollTop;")
saveScrollPosition.Append("}")
saveScrollPosition.Append("document.body.onscroll=saveScrollPosition;")
saveScrollPosition.Append("</script>")

RegisterStartupScript("saveScroll", saveScrollPosition.ToString())

If (Page.IsPostBack = True) Then

setScrollPosition.Append("<script language='javascript'>")
setScrollPosition.Append("function setScrollPosition() {")
setScrollPosition.Append(" document.body.scrollTop = " & Request("__SCROLLPOS") & ";")
setScrollPosition.Append("}")
setScrollPosition.Append("document.body.onload=setScrollPosition;")
setScrollPosition.Append("</script>")
RegisterStartupScript("setScroll", setScrollPosition.ToString())

End If

End Sub

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

MyBase.Load
RetainScrollPosition()
End Sub

  1. DataList使用分化风格的沙盘模拟经营

  那招也非常实用,你能够构建多个例外的模板或表现情势,分别以.ascx控件的样式保留,运维时依据有个别条

件动态的拈轻怕重选取个中的一个模板,别的ScottGu感觉ItemDataBound方法也能够定制你显得的表现,例如加亮有个别

要素或是加叁个减价广告图等等。

Dim theme As String
theme = DropDownList1.SelectedValue

DataList1.ItemTemplate = Page.LoadTemplate(theme & ".ascx") ---Cool
DataList1.DataSource = DS
DataList1.DataBind()

      4. 设置服务器端控件的刀口

Private Sub SetFocus(ByVal controlToFocus As Control)
Dim scriptFunction As New StringBuilder
Dim scriptClientId As String

scriptClientId = controlToFocus.ClientID
scriptFunction.Append("<script language='javascript'>")
scriptFunction.Append("document.getElementById('" & scriptClientId & "').focus();")
scriptFunction.Append("</script>")
RegisterStartupScript("focus", scriptFunction.ToString())
End Sub

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

MyBase.Load
If (Pag

本文由10bet手机官网发布于面向对象,转载请注明出处:不起作用,中为控件设置焦点为何无效

上一篇:前端面试题之CSS,浏览器滚动条 下一篇:没有了
猜你喜欢
热门排行
精彩图文