为什么服务器控件都没有name属性?象HTML控件大都可以设置Name属性,在JS里面操作的时候就能非常方便的根据document.getElementsByName取出一组对应的控件。

解决方案 »

  1.   

    服务器控件是asp.net封装的服务器的类,经过实例化运行后生成html输出给浏览器变成html元素
      

  2.   

    觉得奇怪,为什么不给服务器控件也设置个类似于name的属性,好让这些控件间能根据它Group在一起,方便在javascript的document.getElementsByName的操作
      

  3.   

    虽然没有,但是你写了也不会错,name是老标准里面就有的
      

  4.   

    asp.net服务器控件特意地支持这种自定义属性。举个例子<asp:Calendar ID="Calendar1" runat="server" 我记录的数据="<%#mv %>"></asp:Calendar>protected string mv;protected void Page_PreRender(object sender, EventArgs e)
    {
        mv = "889900";
        this.Calendar1.DataBind();
    }然后你可以用一个按钮来默认页面上可能发生的任何回发,在按钮中去看看:var x = this.Calendar1.Attributes["我记录的数据"];这就是说,asp.net不但支持你自定义属性,而且还给你维系了动态变得的状态值,这是asp.net的很简单很初级的功能,只是不知道为什么你没有从入门书上看到罢了。
      

  5.   

    我自己设置了一个属性“我记录的数据”,然后我用程序给它赋值“889900”,在事件就可以取出这个动态改变的值。可以自定义属性,服务器控件根本不关心name,但是你就可以当作一个普通的自定义属性来实现它。
      

  6.   

    自定义属性。这个是基本的html啊。