2009-11-03 14 views
5

के साथ समस्या मेरे पास ड्रॉपडाउन के साथ आंशिक दृश्य है (Paid and unpaid विकल्पों के साथ) और एक बटन। मैं jquery लोड का उपयोग करके इस आंशिक दृश्य को लोड कर रहा हूं, जब उपयोगकर्ता किसी पृष्ठ के उप मेनू में Paid/Unpaid List link पर क्लिक करता है।jquery संवाद

जब मैं ड्रॉपडाउन में भुगतान का चयन करता हूं और बटन पर क्लिक करता हूं, तो यह jquery संवाद में भुगतान किए गए ग्राहकों की सूची दिखाता है और यदि मैं अवैतनिक और क्लिक बटन का चयन करता हूं, तो यह jquery संवाद में अवैतनिक ग्राहकों को दिखाता है।

मैं संवाद के लिए निम्न कोड लिख रहा हूँ:

$('#customers').dialog({ 
      bgiframe: true, 
      autoOpen: false, 
      open: function(event, ui) { 
       //populate table 
       var p_option = $('#d_PaidUnPaid option:selected').val(); 
       if (p_option == 'PAID') { 
        $("#customercontent").html(''); 
        //$("#customercontent").load("/Customer/Paid"); 
       } 
       else if (p_option == 'UNPAID') { 
        $("#customercontent").html(''); 
        //$("#customercontent").load("/Customer/Unpaid"); 
       } 
      }, 
      close: function(event, ui) { 
       //do nothing 
      }, 
      height: 500, 
      width: 550, 
      modal: true 
     }); 

पहली बार, मैं jQuery संवाद में सही ढंग से सूची हो रही है, लेकिन जब मैं Paid/Unpaid List link फिर से क्लिक करें और ड्रॉप-डाउन में अवैतनिक चयन और बटन पर क्लिक करें, यह jquery संवाद में previos लोड सामग्री दिखाता है।

मैं यहाँ क्या गलत कर रहा हूं?

उत्तर

4

jQuery AJAX पर नो-कैशिंग विकल्प जोड़ने का प्रयास करें। मुझे लोड() फ़ंक्शन (और आईई) में समस्याएं थीं, जहां कैश किए गए परिणाम हमेशा दिखाए जाएंगे। सेटिंग बदलने के लिए सभी jQuery AJAX अनुरोध के लिए

$.ajaxSetup({cache: false}); 
+0

मुझे इस लाइन को जोड़ने की आवश्यकता क्यों है? आंशिक दृश्य लोड करने से पहले? - – Prasad

+0

$ ('# ग्राहक') से पहले भी। संवाद ({... पर्याप्त होना चाहिए। अगर आपके पास किसी भी प्रकार की जावास्क्रिप्ट बूटस्ट्रैप फ़ाइल है, तो वह सामान्यतः –

+0

पर जायेगा, मैंने पहले बटन के क्लिक ईवेंट में कॉल किया है संवाद खोलना, लेकिन फिर भी समस्या होती है – Prasad

1

प्रयास करें खुला के बाद इस ऐड कार्य करें:

$('#customers').empty().remove(); 

उदाहरण:

open: function(event, ui) { 
       //populate table 
       var p_option = $('#d_PaidUnPaid option:selected').val(); 
       if (p_option == 'PAID') { 
        $("#customercontent").html(''); 
        //$("#customercontent").load("/Customer/Paid"); 
       } 
       else if (p_option == 'UNPAID') { 
        $("#customercontent").html(''); 
        //$("#customercontent").load("/Customer/Unpaid"); 
       } 

       $('#customers').empty().remove(); 

      }, 
3

मुझे आशा है कि मैं साथ आने के लिए भी देर नहीं हुई सही उत्तर। मुझे एक ही समस्या थी और मैंने इसे AJAX सेटिंग्स के साथ हल किया।

open: function() { 
     jQuery.ajaxSetup({ 
      cache: false 
     }); 
     //populate table or do what you want... 
} 
+0

यह मेरे लिए काम करता था ... यह मजेदार ट्रैकिंग नहीं था। –