如何在jQuery中更改标签的文本?

时间:2010-08-27 12:35:38

标签: jquery html asp.net label

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

<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>

请告知

9 个答案:

答案 0 :(得分:240)

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

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

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

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

或者通常,您可以使用:

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

OR

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

答案 1 :(得分:53)

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

将其更改为

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

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

答案 2 :(得分:44)

试试这个:

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

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

答案 3 :(得分:9)

试试这个

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

答案 4 :(得分:5)

<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>

答案 5 :(得分:4)

我自己经历了这个并找到了解决方案。请参阅ASP.NET标签服务器控件实际上被作为span(而不是输入)进行处理,因此使用.val()属性来获取/设置将不起作用。相反,您必须使用跨度上的“text”属性并使用控件.ClientID属性。以下代码将起作用:

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

答案 6 :(得分:3)

$('#<%= lblVessel.ClientID %>').html('New Text');

ASP.net Label将在浏览器中呈现为span。用户'html'。

答案 7 :(得分:2)

我们必须根据它找到属性值的标签。我们有替换标签文本。

脚本:

<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 :(得分:0)

   lable value $('#lablel_id').html(value);