मैं अपने लेबल पर क्लिक करने के बाद अपनी सामग्री को दिखाने/छिपाने के विकल्प के साथ कुछ फ़ील्ड को बढ़ाने के लिए चाहता हूं।jQuery लचीला छुपा/फ़ील्ड का शो
वर्तमान में, एचटीएमएल इस तरह दिखता है:
<fieldset>
<legend>Fieldset 1</legend>
<!-- Some input, p, div, whatever -->
</fieldset>
<fieldset>
<legend>Fieldset 2</legend>
<!-- Some input, p, div, whatever -->
</fieldset>
तो, एक fieldset legend
के क्लिक पर, कुछ भी लेकिन माता-पिता fieldset के क्लिक किया कथा चालू किए जाने की जानी चाहिए।
मैं इस उपयोग करने की कोशिश:
$("fieldset *:not(legend)").hide();
$("fieldset legend").click(function(){
$(this).nextAll().slideToggle();
});
लेकिन यह कुछ भी (यहां तक कि पहली जगह में सामग्री छिपा नहीं) नहीं करता है। निस्संदेह मैं केवल उस फ़ील्ड पर दृश्य को टॉगल करना चाहता हूं जिसे उपयोगकर्ता ने क्लिक किया है, इसलिए इसे किसी भी तरह से निर्धारित करना होगा कि कौन सा किंवदंती क्लिक किया गया था और फिर संबंधित फ़ील्ड की सामग्री को छुपाएं।
निश्चित रूप से, मैं उन्हें सभी आईडी दे सकता हूं और प्रत्येक फ़ील्ड के लिए कोड लिख सकता हूं, लेकिन यह अपेक्षाकृत अनावश्यक है कि यह हमेशा एक जैसा होगा, मुझे लगता है कि इस कार्यक्षमता को किसी भी क्षेत्र के लिए सार्वभौमिक बनाने का एक तरीका होना चाहिए। ..
किसी के पास एक साफ विचार है?
हाँ, अच्छी तरह से:
जावास्क्रिप्ट (jQuery की आवश्यकता है) और यह काम करेगा, फिर भी यह एक हैक है और HTML को संपादित करने की आवश्यकता है: -/फिर भी, धन्यवाद। –
यह एक हैक कैसे कर रहा है? ... आपने यह निर्दिष्ट नहीं किया है कि आप HTML को संशोधित नहीं करना चाहते थे। – Mottie