diff --git a/src/core/js/form_elements.js b/src/core/js/form_elements.js index d0f960be226245ea5527da946cd682d9a0591aff..a4690932d8257b416992d7f2c4fa0c24903d139a 100644 --- a/src/core/js/form_elements.js +++ b/src/core/js/form_elements.js @@ -1375,14 +1375,14 @@ var form_elements = new function () { this.make_file_input = function (config) { const ret = this._make_input(config); $(ret) - .find("input:file") + .find(":input") .prop("multiple", !!config.multiple) .css({ "display": "block" }); if (config.accept) { $(ret) - .find("input:file") + .find(":input") .attr("accept", config.accept); } @@ -1596,4 +1596,4 @@ var form_elements = new function () { $(document).ready(function () { caosdb_modules.register(form_elements); -}); +}); \ No newline at end of file diff --git a/test/core/js/modules/form_elements.js.js b/test/core/js/modules/form_elements.js.js index d8e46fd27e4087d82b97ead49c6d3eee6d447ff4..aa2e281c7d25f03ce8ed109fb5728919635abec6 100644 --- a/test/core/js/modules/form_elements.js.js +++ b/test/core/js/modules/form_elements.js.js @@ -772,4 +772,17 @@ QUnit.test("select_input caching", async function (assert) { form_elements.load_cached(cache, form[0]); await sleep(200); assert.equal(form_elements.get_cache_value(field[0]), "f", "value back to value from cache"); +}); + +QUnit.test("make_file_input", function (assert) { + const config = { + name: "some_file", + multiple: true, + accept: ".tsv, .csv", + } + const file_input = $(form_elements.make_file_input(config)); + assert.equal(file_input.find(":input").length, 1, "file input there"); + assert.equal(file_input.find(":input").attr("name"), "some_file", "has file input with correct name"); + assert.ok(file_input.find(":input").prop("multiple"), "is multiple"); + assert.equal(file_input.find(":input").attr("accept"), ".tsv, .csv", "accept there"); }); \ No newline at end of file