ID是你实例化对象的时候所指定的ID。通过这个 ID 可以在服务器端对服务器端控件的属性、方法和时间进行编程访问。
ClientID是你实例化的对象生成为HTML代码时所对应的id,需要在客户端访问时候用的,一般情况下与服务器端的 ID 相同,如果是控件嵌套则一般每层用_隔开,常用方式:
var divContainer=document.getElementById('<%= divContainer.ClientID%>');
UniqueID是你实例化的对象生成为HTML代码时对应的name,当需要参与服务端回传的时候用的,一般用$隔开,如下代码:
<input id="Repeater1_ctl03_CheckBox1" type="checkbox" name="Repeater1$ctl03$CheckBox1" />
<input name="Repeater1$ctl03$Hidden1" type="hidden" id="Repeater1_ctl03_Hidden1" value="993" />
某些控件,如在Gridview中Pagetemplate中的控件通过ID取不到值的控件可以通过Requst.From[gridview.FindControl(ID).UniqueID]来获取回传的值(有时候通过Text获取不到客户端最新提交的值)。