在ASP中
       if(theForm.userName.value ==""){
              alert("请输入用户名")
     theForm.userName.focus();
     return;
       }
      
       请问在。NET中,当表单提交时,如果用户名为空,如何让焦点定位在服务器端组件。
           if(document.getElementById("userName").value ==""){
              alert("请输入用户名")
    // theForm.userName.focus();   -->>这里该怎么写????
     return;
       }

解决方案 »

  1.   

    你前面都会做,后面一步不会了??一样的啊document.getElementById("userName").focus(),如果你前一步document.getElementById("userName").value 能够取到值,那后一步一定没问题
      

  2.   

    一样的 你的代码是 javascript 的 你就在javascript里调用asp.net的服务器控件名 和客户端html控件 调用方式是一样的
      

  3.   

    从你问的问题是不准确的,如何“让焦点定位在服务器端组件”,当组件还在服务器端(此时才能称为服务器端组件)的时候,是不可能让焦点定位过去的,焦点只在客户端呈现的时候才有,而当组件呈现到客户端的时候,它已经是DHTML object了。
      

  4.   

    document.getElementById("userName").value 能够取到值,但是 .focus()就是没作用,求教
      

  5.   

    alert('.......') 后面加一个分号试试
    var obj =  document.getElementById("userName");
    if (obj.value == '')
    {
        alert('请输入用户名');
        obj.focus();
        return false;
    }
      

  6.   

    setActive()?能给个例子吗?
      

  7.   

    alert('.......') 后面加一个分号试试
    var obj =  document.getElementById("userName");
    if (obj.value == '')
    {
        alert('请输入用户名');
        obj.focus();
        return false;
    }
    小弟试了,也不行
      

  8.   

    var obj = document.getElementById("userName");
    alert(typeof obj);
    return;试试,如果不是[object]的话,你还是查查其他地方先吧。