मैं Blueimp's jQuery-File-Upload प्लगइन के साथ प्रयोग कर रहा हूं, जो demo द्वारा निर्णय लेना बहुत ही आशाजनक दिखता है।ब्लूंप की jQuery-फ़ाइल-अपलोड प्लगइन आग कॉलबैक क्यों नहीं है?
यह लागू करने के लिए वास्तव में आसान है:
var $uploadButton = $("#fileop-upload");// <input type="file" id="fileop-upload" [etc] />
$uploadButton.fileupload({
url : "//domain/path/to/receive-uploaded-files"
});
चयनित फ़ाइलों के रूप में उम्मीद पृष्ठ को ताज़ा करने के बिना ठीक अपलोड किए जाते हैं, लेकिन इस तरह एक न्यूनतम विन्यास के साथ निश्चित रूप से उपयोगकर्ता को कोई भी सूचना नहीं मिलेगा। यहां है जहां प्लगइन के कॉलबैक काम में आएंगे।
दस्तावेज़ीकरण के अनुसार कॉलबैक को परिभाषित करने के दो तरीके हैं। उदाहरण के लिए add
घटना (जो जब भी एक फ़ाइल अपलोड करने के लिए चयन किया जाता है आग) इस तरह मूल विन्यास वस्तु में जोड़ा जा सकता है:
$uploadButton.fileupload({
add : addFileListener,
url : "//domain/path/to/receive-uploaded-files"
});
या वैकल्पिक रूप से:
$uploadButton.bind("fileuploadadd", addFileListener);
मुझे लगता है कि मिल गया है हालांकि केवल पहला दृष्टिकोण काम करता है, दूसरा कोई भी कुछ नहीं करता है।
यह और भी उत्सुक है कि कोई अन्य कॉलबैक - विशेष रूप से progress
और start
- बात नहीं फायरिंग किए जाने की कैसे मैं उन्हें बाँध लगता है:
$uploadButton.fileupload({
add : addFileListener,
progress : progressListener,
start : startListener,
url : "//domain/path/to/receive-uploaded-files"
});
या
$uploadButton.fileupload({
add : addFileListener,
url : "//domain/path/to/receive-uploaded-files"
});
$uploadButton.bind("fileuploadprogress", progressListener");
$uploadButton.bind("fileuploadstart", startListener");
मेरे पास है निर्दिष्ट श्रोता कार्यों को परिभाषित किया गया है, और कोड किसी भी त्रुटि या चेतावनियों की रिपोर्ट नहीं करता है।
.bind
विधि की विफलता के लिए स्पष्टीकरण क्या है, और progress
या start
श्रोताओं को कभी सक्रिय क्यों नहीं किया जाता है?
मैं blueimp अपलोड करने वाले कॉलबैक के साथ एक ही बिंदु से लड़ने में हूँ, IE के लिए कई फ़ाइल चयन जोड़ने के लिए फ़ाइल चयन संवाद को संभालने के लिए पूरी तरह से एक SWFUpload शैली फ्लैश कोसते घटक को लागू करने की कोशिश कर रहा। – nathanchere
जिज्ञासा से बाहर, क्या आप पुष्टि कर सकते हैं कि आप किस jQuery और अपलोडर संस्करण का उपयोग कर रहे हैं? मैं जेक्यू 1.5.2 और अपलोड प्लगइन के 4.4.2 संस्करण का उपयोग कर रहा हूं। – nathanchere
मैंने jQuery के नवीनतम, ताज़ा डाउनलोड किए गए संस्करण और अपलोड प्लगइन का उपयोग किया है। वैसे भी, मैं इस समय इस प्लगइन से दूर चले गए हैं और पूरी तरह से फ़ाइल एपीआई आधारित समाधान विकसित किया है (http://blog.new-bamboo.co.uk/2010/7/30/html5-powered-ajax-file -उपलोड) जो केवल एफएफ 4 +, क्रोम और सफारी के साथ काम करता है, लेकिन सौभाग्य से यह अब मेरे उद्देश्यों के लिए स्वीकार्य है। – Wabbitseason