Come modificare il testo di un'etichetta?


175

Ho un elenco di pulsanti di opzione e facendo clic sulla voce di pulsante di opzione devo modificare il testo della sua etichetta. Ma per qualche motivo non funziona. Il codice è sotto:

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

Non sono un tipo ASP.NET ma penso che l'id generato per il browser non conservi l'ID che hai fornito sul lato server. Crea una vista sorgente e incolla qui il codice pertinente.
Allain Lalonde,

Risposte:



275

Stavo avendo lo stesso problema perché stavo usando

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

Ho imparato che è possibile utilizzare il metodo jquery provvisorio per cancellarlo prima quindi aggiungere:

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

O in modo convenzionale, è possibile utilizzare:

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

O

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

Applico lo stesso ma non funziona. Ho usato pagine secondarie. Come scrivo nelle pagine secondarie. Lo scrivo $('#contentPlaceHolderId_LabelID')non funziona. Cambio anche la Modalità cliente su Statico ma non funziona. Per favore aiuto.
Salman Mushtaq,

Ho usato $('[id*=LabelID]').text("some value");perché il mio controllo era il controllo del server.
Ashi,

45

Prova questo:

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

Il id$=corrisponderà gli elementi che terminano con quel testo, che è come ASP.NET genera automaticamente gli ID. Puoi renderlo più sicuro usando span[id=$=lblVessel]ma di solito questo non è necessario.


15

prova questo

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


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>

4

Ho appena superato questo da solo e ho trovato la soluzione. Vedere un controllo del server di etichette ASP.NET effettivamente viene ridimensionato come span (non come input), quindi l'utilizzo della proprietà .val () per ottenere / impostare non funzionerà. Invece devi usare la proprietà 'text' sull'intervallo in congiunzione con l'uso dei controlli .ClientID. Il seguente codice funzionerà:

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

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

L'etichetta ASP.net verrà visualizzata come intervallo nel browser. quindi l'utente 'html'.


2

dobbiamo trovare il tag label per il valore dell'attributo basato su that.we deve sostituire il testo dell'etichetta.

script:

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

Vuoi maggiori dettagli. Fai clic qui


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.