2011-11-15 81 views
1

我想更改其父顯示隱藏的標籤的文本。由於其父母的知名度,我無法訪問該標籤。如何更改隱藏的<label>的文本

我想知道是否有方法可以在不改變父級的可見性的情況下更改此標籤的文本。

我試着改變標籤的可見性,改變文字並隱藏它,沒有奏效。

$(document).ready(function(){ 
$("#394").find(".name").children("label").text("Home"); 

});

<div class="sample1" style="display: none;"> 
<div id="394"> 
    <div class="name"> 
     <label>house.jpg</label> 
    </div> 
</div> 
</div> 

任何建議/想法?

答:

首先,謝謝大家的響應。

我修正了這個問題。

這是我做的改變,它的工作。

$(document).ready(function(){ 
$(".sample1").find(".name").children("label").text("Home"); 
}); 

<div class="sample1" style="display: block;"> 
<div style="display: none;" id="398"> 
    <div class="name"> 
     <label>Sample</label> 
    </div> 
</div> 
</div> 
+1

請添加您使用過的代碼。 – Smamatti

+0

標籤不應該真的改變,也許你的意思是輸入?請發佈你想要實現的例子。 –

+0

隱藏的元素可以像可見的元素一樣選擇;如果它們不在DOM中,它只會更復雜一點。 – pimvdb

回答

3

樣品
(更新)http://jsfiddle.net/SXLnt/1/
(舊)http://jsfiddle.net/SXLnt/

解決方案

$("#394 label").text("new_house.jpg"); 
$(".sample1").show(); // show hidden result 

桑普樂HTML

<form id="parent_form" style="display: none; visibility: hidden;"> 
    <label for="male" id="lb_male">Male</label> 
    <input type="radio" name="sex" id="male" /> 
    <br /> 
    <label for="female" id="lb_female">Female</label> 
    <input type="radio" name="sex" id="female" /> 
</form> 

樣品JS(jQuery的)

$("#lb_male").text("Man");  // Change text 1 
$("#lb_female").text("Woman"); // Change text 2 
//$("#parent_form").show();  // Show parent 

樣品DOM結果
JSFiddle result

+0

我真的很感謝迴應。但是我現在發佈了不適合我的代碼。 – Ananth

+0

@KnowledgeSeeker我更新了我對問題編輯的回答。請查閱。請參閱:http://jsfiddle.net/SXLnt/1/ – Smamatti

0

如果標籤的ID是lblSomething,你能做到這一點在JQuery中作爲所以... $("lblSomething").val("Changed value") Hope 它有助於。

0

如果您發佈的是完整的代碼,它看起來像是缺少外部div上的結束標記。試試這個:

<div class="sample1" style="display: none;"> 
    <div id="394"> 
    <div class="name"> 
     <label>house.jpg</label> 
    </div> 
    </div> 
</div> 
+0

不,我錯過了這裏。我現在改了它。 – Ananth