当使用MasterPage、UserControl等容器时,为了避免控件的重复命名,asp.net会自动将容器中的控件生成一个ClientID(Control Tree中的可生成,否则不会生成)。
JavaScript客户端脚本获取服务器控件Id: <%=TextBox1.ClientID%> 即: <%= 服务器控件id.ClientID%>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
<script type="text/javascript">
function show() {
var str = document.getElementById_x("<%=TextBox1.ClientID%>").value;
alert(str);
}
</script>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<table>
<tr>
<td>
搜索页面<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:TextBox ID="TextBox1" runat="server" onclick="show()"></asp:TextBox>
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button"/>
</td>
</tr>
</table>
</asp:Content>