लेबल का पाठ कैसे बदलें?


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 आदमी नहीं हूँ, लेकिन मुझे लगता है कि ब्राउज़र के लिए जनरेट की गई आईडी उस सर्वर के लिए आपके द्वारा प्रदान की गई आईडी को बरकरार नहीं रखती है। एक दृश्य स्रोत करें और संबंधित कोड यहां पेस्ट करें।
एलन लालोंड

जवाबों:



275

मुझे वही समस्या आ रही थी क्योंकि मैं उपयोग कर रहा था

$("#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");क्योंकि मेरा नियंत्रण सर्वर नियंत्रण था।
आशी

45

इसे इस्तेमाल करे:

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

id$=तत्वों है कि पाठ, जिसके कारण ASP.NET ऑटो उत्पन्न ID के साथ कि अंत से मेल खाएगी। आप इसे सुरक्षित उपयोग कर सकते हैं span[id=$=lblVessel]लेकिन आमतौर पर यह आवश्यक नहीं है।



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 () संपत्ति का उपयोग करने से काम नहीं चलेगा। इसके बजाय आप नियंत्रण का उपयोग करने के साथ संयोजन में अवधि पर 'पाठ' संपत्ति का उपयोग करना चाहिए। निम्नलिखित कोड काम करेगा:

$("#<%=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>

एचटीएमएल

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

आप अधिक जानकारी चाहते हैं। यहां क्लिक करें


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.