2014-07-15 14 views
7

मैं ब्लूंप की jQuery-फ़ाइल-अपलोड प्लगइन (मूल संस्करण) का उपयोग कर रहा हूं और मुझे कोई समस्या है। पहली फ़ाइल अपलोड अपेक्षित के रूप में काम कर रहा है, लेकिन जब मैं एक और फाइल भेजना चाहता हूं तो यह काम नहीं कर रहा है।ब्लूंप की jQuery-फ़ाइल-अपलोड दूसरी फ़ाइल अपलोड समस्या

fileinput.fileupload({ 
      dataType: 'json', 
      done: function (e, data) { 
       $.each(data.result.files, function (index, file) { 
        //do stuff with files 
       }); 
      } 
     }).bind('fileuploadadd', function (e, data) { 
      data.context = $('<p/>').text('Uploading...').appendTo(document.body); 
      data.submit(); 

     }); 

संपादित करें:

ठीक है मैं क्या वजह से समस्या आ रही है पता है। लेकिन मुझे नहीं पता कि इसे कैसे ठीक किया जाए। मैंने इनपुट पर फ़ाइल अपलोड प्लगइन का उपयोग किया है जिसने कोई भी सेट सेट नहीं किया है। मैं इसे किसी अन्य बटन से ट्रिगर करता हूं जो छुपा इनपुट पर क्लिक()/ट्रिगर ('क्लिक') विधि का उपयोग करता है। पहला ट्रिगर ठीक काम करता है, लेकिन दूसरा ट्रिगर फ़ाइल संवाद का चयन करता है। कुछ भी खुश करने के बाद। जब मैं सीधे इनपुट फ़ील्ड का उपयोग करता हूं तो यह काम करता है जैसा कि इसे करना चाहिए। इस मुद्दे को कैसे दूर करें?

+1

मेरे पास एक ही अवधारणा और समान लक्षण हैं। ऐसा लगता है कि ब्रूट समाधान 'fileupload (' नष्ट ')' है और प्रत्येक AJAX 'किए गए' ईवेंट के बाद पुनः लागू होता है। क्या आपने इसे एक और तरीका हल किया? – vatavale

उत्तर

5

समस्या दिखाई देती है क्योंकि jQuery-फ़ाइल-अपलोड क्लोन और प्रत्येक अपलोड करने के इनपुट क्षेत्र की जगह (docs) ।

तो आप पुरानी फ़ाइल-इनपुट टैग पर click ईवेंट ट्रिगर कर रहे हैं, जो अब और काम नहीं कर रहा है।

इस हल करने के लिए आपको कम से कम दो विकल्प हैं:

  1. उत्प्रेरक click प्रत्येक के बाद नई फ़ाइल-इनपुट पर घटना blueimp add घटना।

  2. प्लगइन सेटअप पर replaceFileInput: false का उपयोग करें (यह कुछ ब्राउज़रों पर यूएक्स को घटाएगा)। (docs)

0

जवाब देने के लिए वहाँ के रूप में पर्याप्त जानकारी है, लेकिन कुछ इस तरह काम कर सकते हैं नहीं है मुश्किल है:

function test() { 

    fileinput.fileupload({ 
     dataType: 'json', 
     done: function (e, data) { 
      $.each(data.result.files, function (index, file) { 
       //do stuff with files 
      }); 
     } 
    }).bind('fileuploadadd', function (e, data) { 
     data.context = $('<p/>').text('Uploading...').appendTo(document.body); 
     data.submit(); 
     test(); 
    }); 

} 

test(); 
+0

मैंने कोशिश की है और दुर्भाग्य से यह मदद नहीं की है। –

+0

मुझे ऐसा लगता है, मुझे नहीं पता कि आपकी वेबसाइट कैसे काम करती है। – peterpeterson

+1

क्या प्लगइन के मूल संस्करण को कुछ औपचारिक जेसन जवाब की आवश्यकता है? –

संबंधित मुद्दे