日期:2014-05-17  浏览次数:20472 次

关于jquery寻找ID绑定的一个问题
前台相关绑定的span:
<div class="loginDisplay">
  <span id="popup" runat="server">登录</span>
  <span id="loginSuccess" runat="server"></span>
  </div>
这个是相关ID绑定的jquery:
 //点击链接弹出登录窗口
  $("#popup").click(function () {
  $("#divLoginWindow").fadeIn("slow"); //toggle("slow"); 
  $("#txtUserName").focus();
  //获取页面文档的高度
  var docheight = $(document).height();
  //追加一个层,使背景变灰
  $("body").append("<div id='greybackground'></div>");
  $("#greybackground").css({ "opacity": "0.5", "height": docheight });
  return false;
  });

在点击注册的时候没有效果,我在跟踪了编译后的源代码以后发现这个span的id从popup变成了ctl00_popup。
在把runat="server"去掉之后id又变为popup这是怎么回事?
我曾经测试过类似的带runat="server"的服务器端控件,却发现绑定的id却没有发生变化。很奇怪

------解决方案--------------------
亲。。。。客户端控件在加了runat="server"以后就会被编译,前面就会家一段东西,这个时候要写js的时候要用编译控件的名字。。。
------解决方案--------------------
用输出的ID,或者加个class
------解决方案--------------------
一个是服务器ID,一个是ClientId
------解决方案--------------------
建议查看asp.net页面周期