10. Other Advanced Controls
Combining Controls, Ex. 1: A Better Way to Upload Files
<< Date and DateTime-based QControls
|
Back to Main
|
Combining Controls, Ex. 2: Browsing Image Files >>
View Source
will open in a new window
The QFileAsset Control
The
QFileAsset
control is a great example of a complex control that combines many simpler controls to provide a single, cohesive control that is very simple/straightfoward in terms of end-user usability.
Combining
QPanels
,
QButtons
,
QDialogBox
,
QImageControl
and of course
QFileControl
, the QFileAsset is an alternative to the standard
<input type="file">
approach to handling file uploads on forms.
Moreover, while
<input type="file">
and
QFileControl
requires a form to be submitted via a
QServerAction
(as opposed to a
QAjaxAction
), because the actual file upload mechanism is in a separate dialog box, this does allow you to have an entire form submitted via AJAX, while at the same time the file upload, itself, is specifically performed using its own QServerControlAction within the
QFileAsset
dialog box.
And finally, as this example shows,
QFileAsset
allows you to process through the standard
QForm
validation process (e.g. checking and reporting on failed "Required" constraints) in a way that makes sense, and in a way that does not necessarily force the user to re-upload on every form submit.
Upload
Please select a file to upload.
Upload
Cancel
Click on the button to change this message.
Click Me