【问题标题】:How to change the text of a label?如何更改标签的文本?
【发布时间】:2011-04-04 18:59:07
【问题描述】:

我有一个单选按钮列表,单击单选按钮项目我必须更改其标签的文本。但由于某种原因,它不起作用。代码如下:

<asp:Label ID="lblVessel" Text="Vessel:" runat="server"></asp:Label>

<script language="javascript">
  $(document).ready(function() {

    $('#rblDiv input').click(function() {
      var selected = $("#rblDiv input:radio:checked").val();
      if (selected == "exportpack") {
        $('#lblVessel').text("NewText");
      }
    });
  });
</script>

【问题讨论】:

  • 我不是 ASP.NET 人,但我认为为浏览器生成的 ID 不会保留您在服务器端为其提供的 ID。做一个查看源代码并在此处粘贴相关代码。

标签: javascript jquery html asp.net label


【解决方案1】:

我遇到了同样的问题,因为我正在使用

$("#LabelID").val("some value");

我了解到您可以使用临时 jquery 方法先清除它然后附加:

$("#LabelID").empty();
$("#LabelID").append("some Text");

或者按照惯例,您可以使用:

$("#LabelID").text("some value");

$("#LabelID").html("some value");

【讨论】:

  • 我应用相同但不工作。我使用了子页面。我如何在子页面中写作。我写$('#contentPlaceHolderId_LabelID') 它不起作用。我还将客户端模式更改为静态但没有工作。请帮忙。
  • 我使用了$('[id*=LabelID]').text("some value");,因为我的控制是服务器控制。
  • 谢谢您,先生。
【解决方案2】:

ASP.Net automatically generates unique client IDs for server-side controls.

改成

 $('#<%= lblVessel.ClientID %>')

在 ASP.Net 4.0 中,您还可以将 ClientIDMode property 设置为 Static

【讨论】:

    【解决方案3】:

    试试这个:

    $('[id$=lblVessel]').text("NewText");
    

    id$= 将匹配以该文本结尾的元素,这就是 ASP.NET 自动生成 ID 的方式。您可以使用span[id=$=lblVessel] 使其更安全,但通常这不是必需的。

    【讨论】:

    • 我正在使用 asp.net,但在看到这个之前我一直卡住。请任何使用 asp.net 的人使用这个而不是其他人。 [id$=lblVessel] 是诀窍。谢谢!
    【解决方案4】:

    试试这个

    $("label").html(your value);$("label").text(your value);

    【讨论】:

      【解决方案5】:

      我自己刚刚经历了这个并找到了解决方案。看到一个 ASP.NET 标签服务器控件实际上 被重新定义为一个 span(不是输入),因此使用 .val() 属性来获取/设置将不起作用。相反,您必须结合使用控件的 .ClientID 属性来使用跨度上的“文本”属性。以下代码将起作用:

      $("#<%=lblVessel.ClientID %>").text('NewText');
      

      【讨论】:

        【解决方案6】:
        <asp:RadioButtonList ID="rbtnType" runat="server">
            <asp:ListItem Value="C">Co</asp:ListItem>
            <asp:ListItem Value="I">In</asp:ListItem>
            <asp:ListItem Value="O">Out</asp:ListItem>
        </asp:RadioButtonList>
        <br />
        <asp:Label ID="lblLabelName" runat="server"></asp:Label>
        <script type="text/javascript">
            $(document).ready(function() {
                $("#<%=rbtnType.ClientID%>").change(function() {
                    var rbvalue = $("input[@name=<%=rbtnType.ClientID%>]:radio:checked").val();
                    if (rbvalue == "C") {
                        $('#<%=lblLabelName.ClientID %>').html('text1');
                    } else if (rbvalue == "I") {
                        $('#<%=lblLabelName.ClientID %>').html('else text2');
                    } else if (rbvalue == "O") {
                        $('#<%=lblLabelName.ClientID %>').html('or elsethistext');
                    }
                });
            });
        </script>
        

        【讨论】:

          【解决方案7】:

          我们必须根据那个找到属性值的标签标签。我们已经替换标签文本。

          脚本:

          <script type="text/javascript">
          $(document).ready(function() 
          { 
          $("label[for*='test']").html("others");
          });
          
          </script>
          

          HTML

          <label for="test_992918d5-a2f4-4962-b644-bd7294cbf2e6_FillInButton">others</label>
          

          You want to more details .Click Here

          【讨论】:

            【解决方案8】:
               lable value $('#lablel_id').html(value);
            

            【讨论】:

              【解决方案9】:
              $('#<%= lblVessel.ClientID %>').html('New Text');
              

              ASP.net 标签将在浏览器中呈现为跨度。所以用户'html'。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2015-01-28
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2022-08-20
                • 2022-01-04
                相关资源
                最近更新 更多