Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在jquery中获取动态Span id?_C#_Asp.net_Jquery_Html - Fatal编程技术网

C# 如何在jquery中获取动态Span id?

C# 如何在jquery中获取动态Span id?,c#,asp.net,jquery,html,C#,Asp.net,Jquery,Html,Iam在asp.net中使用jquery 我有一个用户控件,其中我有div和in div table,表tr和in tr td,在td中我有标签 ASCX: <div ID="Container" runat="server" class="dvContainer"> <table ID="Table" class = "Tablecs"> <thead><tr> <td colspan="2"&

Iam在asp.net中使用jquery

我有一个用户控件,其中我有div和in div table,表tr和in tr td,在td中我有标签

ASCX:

          <div  ID="Container" runat="server" class="dvContainer">
<table ID="Table" class = "Tablecs">
    <thead><tr>
        <td colspan="2">
            <asp:Label ID="lbl1" Text="Swiss" runat="server" /></td>
    </tr>
        </thead>
    <tr>
        <td>ABC</td>
        <td>DEF</td>
    </tr>
    <tr>
        <td><asp:Label ID="lblPA" Text="SUN 12/21 05:04" runat="server" /></td>
        <td ><asp:Label ID="lblPD" Text="SUN 12/21 19:00" runat="server" /></td>
    </tr>
        <tr>
        <td><asp:Label ID="lblAA" Text="SUN 12/21 05:04" runat="server" /></td>
        <td ><asp:Label ID="lblAD" Text="SUN 12/21 19:00" runat="server" /></td>
    </tr>
</table>     
但这并不奏效。 当我动态地签入代码时,它会为每个标签生成一个跨度 如何在循环中动态查找SPAN id并将数据绑定到标签


感谢您的帮助。提前感谢。

假设您有一个带有如下所示标记的usercontrol

<%@ Control Language="C#" AutoEventWireup="true" 
 CodeBehind="WebUserControl1.ascx.cs" Inherits="DOTNET_FORMS.WebUserControl1" %>

<div id="Container" runat="server" class="dvContainer">
    <table id="Table" class="Tablecs">
        <tr>
            <td>
                <asp:Label ID="lblPA" Text="SUN 12/21 05:04" runat="server" />
            </td>
            <td>
                <asp:Label ID="lblPD" Text="SUN 12/21 19:00" runat="server" />
            </td>
        </tr>
    </table>
</div>
然后像这样使用它:

<%@ Register TagPrefix="UC" TagName="Test" Src="~/WebUserControl1.ascx" %>
<UC:Test ID="uc1" runat="server" />
$('#lblPA').text();
因此,您必须注意这些更改,因为只有这样才能使用jQuery获取这些元素,因为jQuery是一种客户端语言,它会在服务器端代码(runat=“server”)执行后执行

但是,如果您不想查看修改过的id,可以执行以下操作

  • 删除
    runat=“server”
    属性,并确保您的ID是唯一的,所有ID都是唯一的
  • runat=“server”
    属性成为它们的属性,在所有服务器端控件上放置一个属性
    clientmode=“static”
    。身份证也不会改变
  • 使用ClientId,即在jQuery选择器中,获取如下元素:
    $('#“+”)
  • 现在,由于您的ID是唯一的,您不需要查找,直接获取如下元素:

    <%@ Register TagPrefix="UC" TagName="Test" Src="~/WebUserControl1.ascx" %>
    
    <UC:Test ID="uc1" runat="server" />
    
    $('#lblPA').text();
    
    或者,如果要使用class
    Tablecs
    遍历表的所有tds,请执行以下操作:

    $('.Tablecs tr td').each(function(index, item){
                 alert($(item).text());
    });
    

    如果您有任何从DB返回的唯一值,请将其添加到span的id属性中。但是我的页面中没有任何span。我是否应该为任何tr或td创建一个span???asp:标签将呈现给span。usercontrol中的所有元素(包括标签)都运行在,这意味着将在运行时修改它们的id。当您运行页面时,转到viewsource并查找分配给标签的ID模式,即跨距,即ucId\u ctrl\u lblPA\u 1、ucId\u ctrl\u lblPA\u 2,然后您可以在这些ID之间循环。您能更清楚地解释一下您想要实现的目标吗?这将帮助我解决您的问题。@Manoj我正在尝试将数据库中的数据动态绑定到具有标签的用户控件。非常感谢您的清晰解释。谢谢,这将对我有很大帮助