라벨의 텍스트를 변경하는 방법은 무엇입니까?


175

라디오 버튼 목록이 있으며 라디오 버튼 항목을 클릭하면 레이블의 텍스트를 변경해야합니다. 그러나 어떤 이유로 든 작동하지 않습니다. 코드는 다음과 같습니다.

<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를 유지하지 않는다고 생각합니다. 뷰 소스를 작성하고 관련 코드를 여기에 붙여 넣으십시오.
Allain Lalonde

답변:



275

내가 사용하고 있었기 때문에 같은 문제가 발생했습니다.

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

임시 jquery 메소드를 사용하여 먼저 지우고 추가 할 수 있다는 것을 배웠습니다.

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

또는 전통적으로 다음을 사용할 수 있습니다.

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

또는

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

나는 똑같이 적용하지만 작동하지 않습니다. 자식 페이지를 사용했습니다. 자식 페이지에 쓰는 방법 나는 $('#contentPlaceHolderId_LabelID')그것이 작동하지 않는다고 씁니다 . 또한 ClientMode를 Static으로 변경했지만 작동하지 않습니다. 도와주세요.
Salman Mushtaq

$('[id*=LabelID]').text("some value");컨트롤이 서버 컨트롤이기 때문에 사용했습니다 .
아시

45

이 시도:

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

id$=해당 텍스트로 끝나는 요소와 일치하며 ASP.NET에서 ID를 자동 생성하는 방식입니다. 더 안전하게 사용할 수 span[id=$=lblVessel]있지만 일반적으로 필요하지 않습니다.


15

이 시도

$("label").html(your value); 또는 $("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

방금이 문제를 해결하고 해결책을 찾았습니다. ASP.NET 레이블 서버 컨트롤이 실제로 입력이 아닌 범위로 붉어지는 것을 참조하십시오. 따라서 .val () 속성을 사용하면 get / set이 작동하지 않습니다. 대신 컨트롤 .ClientID 속성을 사용하여 범위에서 'text'속성을 사용해야합니다. 다음 코드가 작동합니다 :

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

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

ASP.net 레이블은 브라우저에서 범위로 렌더링됩니다. 사용자 'html'.


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>

자세한 내용은 여기를 클릭하십시오.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.