HTML <div class="col-sm-9 col-lg-6 col-xs-12 col-md-9"> <div class="input-group"> <input type="text" class="form-control" name="uploadFile" readonly id="uploadFile"> <span class="input-group-btn"> <span class="btn btn-primary btn-file"> Browse… <input type="file" id="uploadFile" name="uploadFile" > </span> </span> </div> <div id="spanUploadFile"> //Message will display here </div> </div> JQuery $(document).on('change', '.btn-file :file', function() { var input = $(this),numFiles = input.get(0).files ? input.get(0).files.length : 1, label = input.val().replace(/\\/g, '/').replace(/.*\//, ''); var msg = "spanUploadFile"; input.trigger('fileselect', [numFiles, label]); genrateFileMsg(this.id, msg) genrateSizeMsg(this.files[0], msg) }); function genrateFileMsg(id, nId) { var fileExtension = ['jpeg', 'jpg', 'png', 'gif', 'bmp']; var fileExtensionDOB = ['pdf']; //var fileExtensionDOB = ['pdf', 'doc', 'docx', 'txt', ]; if ($.inArray($("#" + id).val().split('.').pop().toLowerCase(), fileExtension) == -1) { $("#" + nId).html("Only files of type jpg, png, gif, jpeg is allowed"); return false; } return true } function genrateSizeMsg(f, nId) { var f = f.size; f = f / 1024; if (f > 100) { $("#" + nId).html("The file you are trying to upload is too large (max 100KB)"); return false; } return true; }
source share