के साथ किसी पृष्ठ में एचटीएमएल डालने के बाद डोम तत्वों का चयन करना मैंने पेज में डाले गए एचटीएमएल के साथ एक अजाक्स टैब नेविगेशन बनाया। कोड इस तरह दिखता है:AJAX
$.ajax({
type: 'POST',
url: 'main/ajaxjson/load_course_details',
data: {page : which, course_id: id},
success: function(home){
$('#ajax-content ').hide();
$('#ajax-content').empty().append(home);
$('#ajax-content').fadeIn();
}
});
ठीक है ... तो मैं अपने एचटीएमएल में अपना मार्कअप जोड़ता हूं। अब मुझे डाले गए एचटीएमएल से डोम तत्वों का चयन करने की जरूरत है, लेकिन मैं नहीं कर सकता। मेरे पास निम्न कोड है:
<a href="javascript:;" class="light-button">Next</a>
<select id="chapters-select">
<?php foreach ($chapters as $chapter) : ?>
<option value="<?php echo $chapter->id; ?>"><?php echo $chapter->title; ?></option>
<?php endforeach; ?>
</select>
यहां मैं चुनिंदा विकल्पों को गतिशील रूप से उत्पन्न करता हूं। जब मैं यह करने के लिए प्रयास करें:
$('#chapters-select').change(function(){
alert('changed');
});
यह काम नहीं करता। मैं AJAX के माध्यम से HTML को जोड़ने के बाद जावास्क्रिप्ट का उपयोग कैसे कर सकता हूं? संस्करण 1.7+
$('body').on('change', '#chapters-select', function(){
alert('changed');
});
आप निकटतम स्थिर लिखना चाहिए body
के बजाय प्रदर्शन बढ़ाने के लिए के लिए on
तरह
मेरे लिए ठीक काम करने के लिए लगता है: http://jsfiddle.net/fyg6m/ कहाँ घटना बाध्यकारी हैं हैंडलर? –
@ फ़ेलिक्सक्लिंग। उन्होंने लिखा कि वह 'अजाक्स' के साथ सामग्री जोड़ रहा है, इसलिए यह एक प्रतिनिधि कार्यक्रम मुद्दा होना चाहिए। – gdoron
@gdoron: शायद, लेकिन यह इंगित करेगा कि तत्वों का चयन * पहले * उन्हें अजाक्स के माध्यम से डाला गया है, जो शीर्षक के विपरीत है। फिर भी, मैं आपसे सहमत हूं। –