Opened 12 years ago

Closed 12 years ago

#11051 closed defect (fixed)

fileUploader fileMask broken

Reported by: rmasse Owned by: Mike Wilcox
Priority: high Milestone: 1.5
Component: DojoX Form Version: 1.4.2
Keywords: Cc:
Blocked By: Blocking:


Specifically with version 1.4.3, the fileMask property of the dojox.form.fileUploader does not apply the supplied mask within the file dialogue.

If you downgrade to a previous version with the same code, it works fine.

Sample code below:

<!DOCTYPE html PUBLIC "-W3CDTD XHTML 1.0 TransitionalEN" ""> <html> <head>

<title>Flash HTML</title> <link href="/tools/dojo/dijit/themes/dijit.css" rel="stylesheet" /> <link href="/tools/dojo/dijit/themes/tundra/form/Button.css" rel="stylesheet" /> <link href="/tools/dojo/dijit/themes/tundra/ProgressBar.css" rel="stylesheet" /> <link href="/tools/dojo/dojox/form/resources/FileUploader.css" rel="stylesheet" />

<script> djConfig = {

isDebug: false,


parseOnLoad: true



<script src="/tools/dojo/dojo/dojo.js"></script>


dojo.require("dojox.form.FileUploader?"); dojo.require("dijit.form.Button");



var fileMask = ["PDF Files", "*.pdf"];

var props = {

isDebug:false, hoverClass:"uploadHover", activeClass:"uploadPress", disabledClass:"uploadDisabled", uploadUrl:dojo.moduleUrl("dojox.form", "/tools/uploadPDF.php"), fileMask:fileMask, flashFieldName:"uploadFiles"



dojo.byId("fFiles").value = ""; var f = new dojox.form.FileUploader?(dojo.mixin({

progressWidgetId:"progressBar", showProgress:true, fileListId:"fFiles", tabIndex:5, selectMultipleFiles:true, deferredUploading:false

},props), "btnF");

dojo.connect(dijit.byId("fSubmit"), "onClick", function(){



dojo.connect(f, "onChange", function(dataArray){

console.log("", dataArray);


dojo.connect(f, "onComplete", function(dataArray){

dojo.forEach(dataArray, function(d){







html, body{

font-family:sans-serif; font-size:12px;



border:1px solid #333333; background:url(/tools/dojo/dijit/themes/soria/images/buttonEnabled.png) #d0d0d0 repeat-x scroll 0px top; font-size:14px; font-family:Arial; width:195px; height:30px; line-height:50px;

vertical-align:middle; /* emulates a <button> */ text-align:center;



background-image:url(/tools/dojo/dijit/themes/soria/images/buttonHover.png); cursor:pointer;


} .uploadPress{




background-image:none; background-color:#666; color:#999; border:1px solid #999; font-family:serif; font-style:italic;

} .progBar{

width:294px; display:none;

} .form{

width:300px; border:1px solid #ccc; margin:5px; padding:3px; position:relative;

} .form, .thumbList{


} .thumbList{

width:300px; border:1px solid #ccc; min-height:100px; margin:5px; padding:3px;

} #fFiles, #hFiles{

width:200px; height:75px; overflow-x:hidden; overflow-y:auto; border:1px solid #ccc;

} .form .field{


} .tbl{


} .tbl td{

width:50%; vertical-align:top;

} .form label{

position:absolute; width:80px; text-align:right; left:0px;

} .form .field, .form .btn{

margin-left:85px; margin-bottom:5px;

} h3{

width:600px; font-weight:normal; font-size:14px;

} ul{

font-size:12px; width:600px;



</head> <body class="tundra">

<h1>FileUploader? Widget Form Test</h1>

<table class="tbl">


<td> <form id="formF" class="form">

<input type="hidden" name="relationId" value="123" /> <label>Files:</label> <div id="fFiles" class="field"></div> <div tabIndex="1" id="btnF" class="uploadBtn btn">Select Files</div> <button tabIndex="6" id="fSubmit" class="btn" dojoType="dijit.form.Button">Submit</button> <div indeterminate="false" id="progressBar" class="progBar" dojoType="dijit.ProgressBar?"></div>


</td> </tr>


</body> </html>

Change History (3)

comment:1 Changed 12 years ago by jer

Ran into same bug. Trip-killer is in postMixInProperties() dojox/form/FileUploder.js, line 412 (1.4.3):

408: postMixInProperties: function(){
412: 	this.fileMask = [];
426: },

this resets anything passed to constructor with empty array. This string is new to 1.4.3 - typo I guess.

comment:2 Changed 12 years ago by dante

Milestone: tbd1.5
Owner: changed from dante to Mike Wilcox
seems a trivial filemask = args.fileMask
[]; ?

comment:3 Changed 12 years ago by dante

Resolution: fixed
Status: newclosed

fixed in [22311]

Note: See TracTickets for help on using tickets.