用户控件的HTML中没有<body ...></body>标签,我想让此控件加载时,就将焦点给某TextBox,原先是这样做的:
<body MS_POSITIONING="GridLayout" onload="document.Form1.TextBox1.focus();">
那么现在应该这么做?另外,此控件中还有一个AJAX实现的无刷新二级联动下拉菜单(按小山做的),为了让页面加载时第二个下拉菜单不会为空白,又在<body>中写了:
<body onload="fenlei_Result();" MS_POSITIONING="GridLayout">
这样的话,就有了两个onload了,二者同时使用的话,是否能这样写:
<body onload="fenlei_Result();document.Form1.TextBox1.focus();"  MS_POSITIONING="GridLayout">
谢谢!

解决方案 »

  1.   

    1:
    <script>
    document.Form1.TextBox1.focus();
    </script>
    2:
    <body onload="fenlei_Result();document.Form1.TextBox1.focus();"  MS_POSITIONING="GridLayout">这样写当然可以
      

  2.   

    谢谢...<script>
    document.Form1.TextBox1.focus();
    </script>错误提示:document.Form1.TextBox1为空或不是对象~忘了说了,在我的用户控件中没有<Form></Form>标签,Form1 是父页面中的标签ID...
      

  3.   

    try:
    document.all.TextBox1
    or
    document.getElementById("TextBox1")
      

  4.   

    <script>document.getElementById("TextBox1").focus();</script>

    <script>document.all.TextBox1.focus()</script>
    还是出现错误:...TextBox1为空或不是对象~
    用户控件代码是这样的:
    <%@ Control Language="c#" AutoEventWireup="false" Codebehind="ruk_new_edit.ascx.cs" Inherits="sys.ck.ruk_new_edit" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
    <script>
    document.getElementById("TextBox1").focus();  //或其他写法,都不行~
    </script>
    <table cellSpacing="0" cellPadding="5" width="100%" border="0" id="TABLE1">
    <tr><td>.............TextBox1..............</td></tr>
    </table>
    父页面静态调用它,并放在一个Panl中,平时是隐藏的,某事件触发后它为显示...
      

  5.   

    document.getElementById("<%=TextBox1.ClientID%>").focus();  
    这行要放在页面的尾部,你的text生成之后才能在客户端调用该对象,否则抱找不到对象