2014-09-24 2 views
0

Я играл с javascript, и я пытаюсь заставить работать ниже.Javascript Unhiding Element Onclick

<script type="text/javascript"> 
     function unhide(a) { 
       document.getElementById(a).style.visibility = "visible"; 
       document.getElementById(a).style.display=block; 
     } 
</script> 

<a onClick="unhide('id1')"><span> Remove</span> 

<span id="id1" hidden="true">Are You sure? | <a href="/forum/remove/id1"> Yes</a>/<a>No</a> </span> 

При щелчке, я пытаюсь показать скрытый элемент. Я не уверен, почему он не работает, логика кажется мне правдой.

Приветствия

+0

Попробуйте использовать document.getElementById (a) .style.display = "block"; – VPK

+0

Можете ли вы объяснить цель этого кода. Я имел в виду, что вы пытаетесь сделать здесь. Coz мне код является полным беспорядком брата. :) –

ответ

0
function unhide(a) { 
      document.getElementById(a).style.visibility = "visible"; 
      document.getElementById(a).style.display="block"; 
    } 

блок является неопределенным, "блок" не

0

Вы используете hiddenhtml5 property, который имеет limited browser compatibility как сейчас. Попытайтесь скрыть его изначально, используя свойство css visibilty:hidden, которое вы меняете с помощью события onclick вашей функции.

function unhide(a) { 
 
    document.getElementById(a).style.visibility = "visible"; 
 
    document.getElementById(a).style.display=block; 
 
}
<a onClick="unhide('id1')"><span> Remove</span> 
 

 
<span id="id1" style="visibility:hidden;">Are You sure? | <a href="/forum/remove/id1"> Yes</a>/<a>No</a> </span>

0

Я надеюсь, что это поможет вам

<script type="text/javascript"> 
     function unhide(a) { 
       document.getElementById(a).style.display = 'block'; 
     } 
</script> 

<a href="javascript:void(0)" onClick="unhide('id1')">Remove</a> 

<span id="id1" style="display: none;">Are You sure? | <a href="/forum/remove/id1"> Yes</a>/<a>No</a> </span> 

Позвольте мне знать.

С уважением.

0

только один пункт:
В <script> теге, все слова без кавычек, зарезервированное слово или variable.So код

document.getElementById(a).style.display=block; 

Должно быть:

document.getElementById(a).style.display='block'; 

Becase block это атрибут отображения, а не другие.

0

Вы используете скрытый атрибут.

Так используйте этот код вместо:

function unhide(a){ 
    document.getElementById(a).removeAttribute('hidden'); 
} 
0

Попробуйте это:

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script> 
<script type="text/javascript"> 
window.onload = function(){ 
$("#id1").hide(); 
}; 

$("#unhide").click(function(){ 
$("#id1").show(); 
}); 
</script> 

<a id="unhide"><span> Remove</span></a> 
<span id="id1">Are You sure? | <a href="/forum/remove/id1"> Yes</a>/<a>No</a> </span> 

Я надеюсь, что это поможет вам, пожалуйста, оставьте комментарий, если он работал или нет.