none
js 如何传递多级的id变量 RRS feed

  • 问题

  • cs文件:
    this.TextBox1.Attributes.Add("onblur", "aaa('" + this.TextBox1.ClientID + "')");

    以下为js文件:
    var el ;
    function aaa(Eleid) {
        el = document.getElementById(Eleid);
    if(...)
    {
    bbb(el);
    }

    function bbb(Ele) {
        var element1 = document.getElementById(Ele);
    element1.focus(); //设置焦点,如何获得id?
    //el.focus();
    }

    在bbb()中该怎么获得服务器控件的id?
    2009年10月31日 8:32

答案

  •     function stateChanged() {
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                if (xmlHttp.responseText == "1") {
                      sUserName.focus(); 

                    sUserName.value = "";
                   
                   
                }
    • 已标记为答案 lfj0912 2009年10月31日 11:37
    2009年10月31日 11:16

全部回复



  • var el ;
    function aaa(Eleid) {
        el = document.getElementById(Eleid);
    if(...)
    {
    bbb(Eleid);
    }

    function bbb(Ele) {
        var element1 = document.getElementById(Ele);
      //  var element1 =el;
    element1.focus(); //设置焦点,如何获得id?
    //el.focus();
    }
    2009年10月31日 9:58
  • 谢谢您! 以下是您教我的ajax, 想在 stateChanged 时, 判断设置服务器控件的焦点
    var sUserName;
    function DetectAccount(UserName_id,AjaxPath) {
    ...
          sUserName = document.getElementById(UserName_id);
        var ee = sUserName.value;
        var url = AjaxPath + "?ee=" + ee; //传到服务端上
        xmlHttp.onreadystatechange = stateChanged;
        xmlHttp.open("GET", url, true);
        xmlHttp.send(null);
    }


        function stateChanged() {
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                if (xmlHttp.responseText == "1") {

                    var aaa = document.getElementById(sUserName);
                    aaa.focus(); 

                    sUserName.value = "";
                   
                   
                }
                else {...       }
            }

        }

    2009年10月31日 10:13
  •     function stateChanged() {
            if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                if (xmlHttp.responseText == "1") {
                      sUserName.focus(); 

                    sUserName.value = "";
                   
                   
                }
    • 已标记为答案 lfj0912 2009年10月31日 11:37
    2009年10月31日 11:16
  • 谢谢您!
    刚才也这样写,无法执行,我还以为那个代码不行. 现在电脑重启一下 ,可以执行了.

    2009年10月31日 11:36
  • 用2008R2评估版 + vs2010 bate2 老是有莫名其妙的出错。
    比如:有一个js文件,任凭增删js文件的函数,增的函数无法执行,删除的函数照样能执行,甚至连js文件改名后,js的程序照样能执行,也就在此时,在知道该js的文件是被锁死,清除临时文件,解决问题。代价是一天的时间。
    还有调试程序运行时,vs2010经常会卡死。
    2009年10月31日 12:13