2012-08-29 10 views
5

मुझे पता है कि एचटीएमएल 5 फाइल एपीआई के साथ ड्रैग और ड्रॉप का उपयोग करके फाइल अपलोड करना संभव है। क्या यह फ़ाइल एक्सप्लोरर से फ़ाइल कॉपी करके और CTRL-V/CMD-V का उपयोग करके या दायाँ क्लिक संदर्भ मेनू से पेस्ट करके इसे वेब पेज में पेस्ट करके भी किया जा सकता है?कीबोर्ड शॉर्टकट्स का उपयोग कर एचटीएमएल 5 पेज पर फ़ाइल अपलोड करें

उत्तर

1

आप ऐसा नहीं कर सकते हैं।

आप इस के साथ आसानी से फ़ाइल पथ प्राप्त कर सकते हैं:

$(document).on('paste',function(e){ 
    var path = e.originalEvent.clipboardData.getData("text"); 
});​ 

तो तुम यह उपयोगकर्ता को दिखा सकते हैं।

लेकिन आप खुद को <input type=file> का मान नहीं बदल सकते हैं।

यह एक सुरक्षा उपाय है: कल्पना करें कि क्या उपयोगकर्ता आपकी फ़ाइल को फ़ॉर्म सबमिट करने से पहले अपलोड करने के लिए फ़ाइल के पथ को बदल सकता है (या उपयोगकर्ता इंटरैक्शन के बिना भी अन्य फॉर्म तत्वों के साथ संभव है)? प्रत्येक महत्वपूर्ण सुरक्षा सुरक्षा के लिए, आधुनिक ब्राउज़रों के लिए कोई ज्ञात "कामकाज" नहीं है।

+0

फ़ाइल एपीआई के साथ संयोजन में एचटीएमएल 5 ड्रैग और ड्रॉप एपीआई का उपयोग करके, आप क्लाइंट फ़ाइल की सामग्री प्राप्त कर सकते हैं। यहां ट्यूटोरियल: http://www.thebuzzmedia.com/html5-drag-and-drop-and-file-api-tutorial/ मुझे आश्चर्य है कि क्या मैं क्लिपबोर्ड से सामग्री को उसी तरह प्राप्त कर सकता हूं। –

+1

मेरे द्वारा पढ़े गए सभी दस्तावेज़ यह दिखाते हैं कि ड्रैग और ड्रॉप ऑपरेशंस पर इसे केवल अनुमति दी जा सकती है (DataTransfer.effectAllowed का उपयोग करके) लेकिन मुझे 100% निश्चित नहीं है। स्रोत: http://www.w3.org/TR/2011/WD-clipboard-apis-20110412/ http://dev.w3.org/html5/spec/dnd.html http://www.w3.org/TR/क्लिपबोर्ड-apis / –

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