javascript获取asp.net服务器端控件的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript获取asp.net服务器端控件的值相关的知识,希望对你有一定的参考价值。
代码如下:
<%@ Page Language="C#" CodeFile="A.aspx.cs" Inherits="OrderManage_A" %> <%@ Register Src="../UserControl/CtrlCalendar.ascx" TagName="CtrlCalendar" TagPrefix="uc1" %> <html> <head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title></title> <script language="javascript" type="text/javascript"> function GetValue() { var txpro=document.getElementByIdx(‘<%=txtProvider_rename.ClientID %>‘); //用js获取服务器控件的值时首先要得到服务器控件的ClientID var txdat=document.getElementByIdx(‘<%=txtCheckIn.ClientID %>‘+"_txtDat"); //用js获取.ascx控件中服务器控件值时首先要得到服务器控件的ClientID再加上.ascx页面里面的服务器空间ID并用"_"连接 txpro.value=txdat.value; } </script> </head> <body> <form id="form1" runat="server"> <div> <tr> <td align="right" bgcolor="#dee5fa">入住日期</td> <td align="left" bgcolor="#dee5fa"><uc1:CtrlCalendar ID="txtCheckIn" runat="server" /></td> </tr> <tr> <td align="right" bgcolor="#dee5fa" onclick="GetValue()"><asp:TextBox ID="txtProvider_rename" runat="server" Width="312px"></asp:TextBox></td> </tr> </div> </form> </body> </html>
CtrlCalendar.ascx
复制代码 代码如下:
<%@ Control Language="C#" CodeFile="CtrlCalendar.ascx.cs" Inherits="CtrlCalendar" %> <table id="Table1" style="HEIGHT: 24px" cellspacing="0" cellpadding="0" width="100" border="0"> <tr> <td style="WIDTH: 81px"><font face="宋体"> <asp:textbox id="txtDat" Width="84px" runat="server" BorderStyle="Groove"></asp:textbox></font></td> <td><div id="Div_imgCanlendar"><font face="宋体"><img id="imgCanlendar" style="CURSOR: hand" src="../images/calendar.gif" runat="server" /></font></div></td> </tr> </table>
js 获取 asp.net 服务器端控件 Label 与 TextBox RadioButtonList 与 DropDownList 的值 在做 BS架构的项目时,经常遇到 需要用js 来调用 asp.net 服务器端控件的值。 大多数的 控件他的值都可以通过js调用它的 value属性来获得此控件的值,但是也有例外的情况。 经常用的 Label控件。他的值用js就不能通过value属性来获得。 Label控件 js获取的实例, var text= document.getElementByIdx(‘Label1‘).innerText; 假如, 这样 var text= document.getElementByIdx(‘Label1‘).value; 则 text 为Undefined。 而 TextBox 的值 就可以 var text= document.getElementByIdx(‘TextBox 1‘).value; 对于,RadioButtonList 与 DropDownList 他们的获取方式是大不一样的! 这主要是因为 他们所生成的 html元素不一样。 DropDownList 的值 获取 比较简单: var ddlvalue = document.getElementByIdx(‘ctl00_Contentplaceholder3_ddlFolws‘).value; 而 RadioButtonList 的值获取 就比较麻烦: var value = ""; var Result = document.getElementsByName(‘ctl00$Contentplaceholder3$rblResult‘); for (var i = 0; i < Result.length; i++) { if (Result.item(i).checked) { value = Result.item(i).value; } } 如果 RadioButtonList 控件 没有一个选择的 那么 value的值 为空! 对于其他控件 js获取值的方法 以后在讨论。
以上是关于javascript获取asp.net服务器端控件的值的主要内容,如果未能解决你的问题,请参考以下文章
ASP.NET 服务器端标签与基于 JavaScript 的 UI 和 REST
ASP.NET后台怎么获取.aspx页面的Checkbox的是不是选中状态?
如何使用 JavaScript 或 JQuery 在 ASP.net 中获取生成控件的 ID