• javascript获取asp.net服务器端控件的值


     

     (2009-10-31 15:24:26)
    标签: 

    杂谈

    分类: 技术笔记
    代码如下:

    <%@ 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" alt="" 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获取值的方法 以后在讨论。

  • 相关阅读:
    十八、分页查询
    十七、oracle的权限和角色
    十六、同义词(synonyms)
    十五、序列
    十四、禁用与启动约束
    十三、修改表时添加约束
    十二、约束
    十一、修改表格
    十、事务(Transaction)
    Windows 远程连接后,自动断开,所有程序都自动关闭(待验证,待更新)
  • 原文地址:https://www.cnblogs.com/lxboy2009/p/3836252.html
Copyright © 2020-2023  润新知