Rebuild multi-file widgets from form values, closes #61
This commit is contained in:
parent
b375de115e
commit
fad8b8bffc
@ -38,16 +38,25 @@ class MultipleFilesWidget {
|
||||
}
|
||||
})
|
||||
|
||||
// If there is something in the field, we need to restore our state
|
||||
if (this.element.field.value) {
|
||||
this.rebuildListFromField()
|
||||
}
|
||||
|
||||
// Set up listening for restore
|
||||
this.element.field.addEventListener('change', evt => {
|
||||
let idList = evt.srcElement.value.split(",")
|
||||
for (let id of idList) {
|
||||
this.addFile(id, id, this.setFileDone.bind(this))
|
||||
}
|
||||
this.viewFileList()
|
||||
this.rebuildListFromField()
|
||||
})
|
||||
}
|
||||
|
||||
rebuildListFromField() {
|
||||
let idList = this.element.field.value.split(",")
|
||||
for (let id of idList) {
|
||||
this.addFile(id, `Saved upload (id ${id})`, this.setFileDone.bind(this))
|
||||
}
|
||||
this.viewFileList()
|
||||
}
|
||||
|
||||
addFile(id, name, stateFunc) {
|
||||
let li = document.createElement('li')
|
||||
li.className = 'filewidget--file'
|
||||
|
Loading…
Reference in New Issue
Block a user