在javascript中获取数据列表的控制值

Get Control values of datalist in javascript

本文关键字:控制 列表 数据 javascript 获取      更新时间:2023-09-26

我有一个数据列表,在数据列表中添加div click时调用javascript。。如何在点击数据列表中添加的div时获得控制值

<asp:DataList ID="DataList1" runat="server">
      <ItemTemplate>
           <div id="metroaqui" class="divsub" runat="server" 
                onclick="javascript:getvalues(this);">
                <table>
                     <tr class="clstd">
                         <td>
                            <b>IP NO:-</b>
                          </td>
                          <td colspan="2" style="width: 20%">
                              <asp:Label runat="server" ID="ipnolable" 
                                   Text='<%# Eval("IpNo") %>'></asp:Label>
                          </td>
                          <td>
                              <b>PATIENT NO:-</b>
                          </td>
                          <td colspan="2">
                              <asp:Label runat="server" ID="Label1"
                                   Text='<%# Eval("PatientNo") %>'>
                              </asp:Label>
                           </td>
                       </tr>
                       <tr>
                       </tr>
                       <tr>
                       </tr>


</asp:DataList>

要访问DataList中的控件,请尝试使用以下方式,

function getVal() 
{
  var datalist = document.getElementById('<%=DataList1.ClientID%>').childNodes[0]; 
  var tb = datalist.getElementsByTagName("input"); 
  for (var i=0;i<tb.length;i++) 
  {
    //TextBox
    if (tb[i].type=="text") 
    {
    alert(tb[i].value);
    }
    //DropDown
    if (tb[i].type=="select") 
    {
    alert(tb[i].options[tb[i].selectedIndex].value);
    }
  }
}

您可以简单地使用document.getElementById从控件中获取值
请注意,您的id将在运行时更改。

还要记住,label在浏览器上呈现为span,因此您必须检查控件的innerTextinnerHtml

您可以利用ClientIDMode="static"来获取服务器控件的静态客户端id。如asp:Label