2013-01-02 128 views
0

在我的<div>中,id屬性是來自網頁的動態結果。 這就像下面在jsp中隱藏動態div

<div class="row" id="WC_AddressEntryForm<c:out value='_${paramPrefix}'/>_div_firstname"> 

所以${paramPrefix}值是動態變化。

也是少數下<div> ID由具有這種類型的代碼

<div class="row" 
id="WC_AddressEntryForm<c:out value='_${paramPrefix}'/>_div_lastname"> 

<div class="row" id="WC_AddressEntryForm<c:out value='_${paramPrefix}'/>_div_1" > 

和幾個的與此類似。 我的要求是隱藏div的時候${paramPrefix}的值是用戶 所有那些<div>以前寫的 那麼實現它的方式是什麼?

非常感謝& 新年快樂

+0

是的,我正在頁面加載得到它,根據我以前在網頁上的選擇。 –

回答

1

只是把這個JS代碼的目標元素後的代碼

<div class="row" id="WC_AddressEntryForm<c:out value='_${paramPrefix}'/>_div_firstname"> 

<script> 
    document.getElementById('WC_AddressEntryFormuser_div_firstname').style.visibility = 'hidden'; 
</script> 

,或者如果你真的想刪除div的分配空間您可以使用display css屬性並將其設置爲none

<script> 
    document.getElementById('WC_AddressEntryFormuser_div_firstname').style.display = 'none'; 
</script> 

好了,所以它似乎_${paramPrefix}包含動態值,那麼你可以做的事情是這樣的

<script> 
var user = "<c:out value='_${paramPrefix}'/>"; 
if(user != ""){ //hide when user variable contains something 
    document.getElementById('WC_AddressEntryForm'+ user +'_div_firstname').style.display = 'none'; 
    //you can hide other elements here... 
} 
</script> 

以及你的要求改變

參考,這將改變: http://rakibulislam.wordpress.com/2008/06/11/changing-css-property-using-javascript/

+0

確實......這會起作用,但你必須處理事件的可視性和顯示。在哪個事件中檢查'_ $ {paramPrefix}'等於「用戶」? –

+0

好吧,但事情是,有幾個div我需要隱藏。在這種情況下**** _ div_firstname _div_lastname _street地址在那裏。那麼我怎麼隱藏他們? –

+0

所以它意味着'_ $ {paramPrefix}'不固定爲'user'? –

1

試試這個 -

<% 
     if (! paramPrefix.equals("User")) { 
    %> 
     <div class="row" id="WC_AddressEntryForm<c:out value='_${paramPrefix}'/>_div_firstname"> 

<% } %> 
+0

嗯,這是我的第一個想法,但如果我們將它放在服務器端,並且用戶仍然想顯示div,那麼用戶需要使用javascript創建div。用戶把一個標籤'javascript',這就像OP只想用'javascript'隱藏它 –