लिए jQuery ईवेंट हैंडलर्स जोड़ने मैं एक div अनुभाग है कि मैं गतिशील jQuery ajax के माध्यम से पॉप्युलेट कर रहा हूँ है:गतिशील रूप से गतिशील HTML
$('#treeview').append(data.d);
कहाँ डेटा अलग आईडी के साथ नेस्टेड divs का एक समूह है।
मैं भी कुछ jQuery कोड है कि एक treeview में divs बना देता है, एक +/- विस्तृत/संक्षिप्त करें और गतिशील डेटा आबादी के साथ है:
$('div.tree div:has(div)').addClass('parent'); // Requires jQuery 1.2!
$('div.tree div').click(function() {
var o = $(this);
o.children('div').toggle();
o.filter('.parent').toggleClass('expanded');
BindGridView($(this).attr('id'));
return false;
});
जब मैं मुख्य treeview में divs पेस्ट मुद्दा है div सभी ठीक है। जब मैं गतिशील रूप से सटीक वही पाठ बनाता हूं, हाँ मैंने इसकी तुलना की है, विस्तार/पतन & गतिशील डेटा आबादी काम नहीं करती है; हालांकि मैं अपने पेज पर अपना सही div लेआउट देख सकता हूं।
मेरा अनुमान है कि यह है कि मैं जब मैं कर रहा हूँ
$ ('# treeview') क्लिक करें घटना & addClass जोड़ने की जरूरत है संलग्न (data.d)।
लेकिन मैं यह नहीं समझ सकता कि कैसे।
कुछ $ की तरह (# treeview) .live ("क्लिक", function() { वर ओ = $ (this); o.children ('div') को चालू();। o.filter (' .parent ')। टॉगल क्लास (' विस्तारित '); बाइंडग्रिड व्यू ($ (यह) .attr (' id ')); झूठी वापसी; }); – mike
और एडक्लास? – mike
@ माइक: 'ऐडक्लास' के बारे में क्या? इसका कोई प्रभाव नहीं पड़ता है, फ़ंक्शन के अंदर चयनकर्ता ठीक काम करेंगे (अभिभावक वर्ग की तलाश में, मुझे लगता है)। 'लाइव' कॉल काम करना चाहिए, लेकिन टिप्पणियों से बताना मुश्किल है। =) – casperOne