2011-08-05 11 views
29

संभव डुप्लिकेट:
Javascript show element on clickजावास्क्रिप्ट में बटन क्लिक करने के बाद div को कैसे प्रदर्शित करें?

मैं DIV निम्नलिखित है।

<div id="welcomeDiv" style="display:none;" class="answer_list" > WELCOME</div> 
<input type="button" name="answer" value="Show Div" onclick="showDiv()" /> 

जावास्क्रिप्ट:: मैं बटन क्लिक करने के बाद DIV प्रदर्शित करने के लिए अब यह प्रदर्शन से कोई भी है

<div style="display:none;" class="answer_list" > WELCOME</div> 
<input type="button" name="answer" > 
+3

http://stackoverflow.com/ प्रश्न/43572 9 1/जावास्क्रिप्ट-शो-एलिमेंट-ऑन-क्लिक – pyvi

उत्तर

65

एचटीएमएल कोड चाहते

function showDiv() { 
    document.getElementById('welcomeDiv').style.display = "block"; 
} 

डेमो देखें: http://jsfiddle.net/rathoreahsan/vzmnJ/

+0

आह एक राठोड, धन्यवाद। सरणी div usibng जावास्क्रिप्ट कैसे प्रदर्शित करें। क्या आप मेरी मदद कर सकते हैं?

+0

यह केवल बटन दिखाता है लेकिन जब मैं – Ooker

10

एचटीएमएल

<div id="myDiv" style="display:none;" class="answer_list" >WELCOME</div> 
<input type="button" name="answer" onclick="ShowDiv()" /> 

जावास्क्रिप्ट

function ShowDiv() { 
    document.getElementById("myDiv").style.display = ""; 
} 

या आप एक अच्छी छोटी एनीमेशन के साथ jQuery का उपयोग करना चाहता है, तो:

<input id="myButton" type="button" name="answer" /> 

$('#myButton').click(function() { 
    $('#myDiv').toggle('slow', function() { 
    // Animation complete. 
    }); 
}); 
+1

पर क्लिक करता हूं तो टेक्स्ट नहीं दिखाता है आपका JQuery कोड दस्तावेज़ के साथ ऐसा करने के लिए बहुत अधिक सुरुचिपूर्ण है .getElementById - निश्चित रूप से केवल JQuery: D –

+0

@MarcinCylke का उपयोग करते समय उपयोगी है, महान अवलोकन : पी –

+0

स्पष्ट रूप से यह है ;-) –

0
<div style="display:none;" class="answer_list" > WELCOME</div> 
<input type="button" name="answer" onclick="document.getElementsByClassName('answer_list')[0].style.display = 'auto';"> 
+1

पर क्लिक करता हूं तो पाठ नहीं दिखाता है getElementsByClassName आइटमों का एक पूरा सेट वापस कर देगा .. आपको यह घोषणा करने की आवश्यकता है कि आप इस तरह से कौन से परिवर्तन करना चाहते हैं IlementsByClassName ('foo') [0]। style.display ... – walialu

+0

@ जेम्स हिल: क्या आप इस मामले के लिए एक समारोह घोषित करना चाहते हैं? var fooJames = function (id) {var d = document.getElementById (id); if (d.style.display == 'block') d.style.display = 'none'; वापसी; d.style.display = 'ब्लॉक'; } जर्मनी में हम इसे कॉल करते हैं: Mit Kanonen auf Spatzen schießen! – walialu

+0

@ वालियालु, मैं समझता हूं कि आप क्या कह रहे हैं, लेकिन एक सामान्य नियम के रूप में, इनलाइन जेएस खराब अभ्यास है। ओपी शायद साइट पर अन्य जेएस चल रहा है। मैंने अपने तर्क को एक फ़ंक्शन में रखा ताकि इसे किसी .js फ़ाइलों में जोड़ा जा सके जिसे वह पहले ही संदर्भित कर रहा है। एफवाईआई - यह एक अच्छा पठन है: http://robertnyman.com/2008/11/20/why-inline-css-and-javascript-code-is-such-a-bad-thing/। –

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

<input type="button" name="answer" onclick="showDiv('toggle')">Show</input> 

<div id="toggle" style="display:none">Hello</div> 
संबंधित मुद्दे