mirror of
https://github.com/ae-utbm/sith.git
synced 2024-10-31 19:38:04 +00:00
Highlight a markdown input in red if required and submit is pressed
Kind of copy the behaviour of a Firefox input Once the submit button has been pressed, highlight in red the text input if it's required but empty
This commit is contained in:
parent
ced90c23db
commit
13312e9879
@ -166,5 +166,36 @@
|
||||
},
|
||||
]
|
||||
});
|
||||
|
||||
$(function() {
|
||||
let textarea = document.getElementById('{{ widget.attrs.id }}')
|
||||
let submit = textarea
|
||||
.closest('form')
|
||||
.querySelector('input[type="submit"]')
|
||||
let parentDiv = textarea.parentElement
|
||||
let submitPressed = false
|
||||
|
||||
function checkMarkdownInput() {
|
||||
// an attribute is null if it does not exist, else a string
|
||||
let required = textarea.getAttribute('required') != null
|
||||
let length = textarea.value.trim().length
|
||||
|
||||
if (required && length == 0) {
|
||||
parentDiv.style.boxShadow = 'red 0px 0px 1.5px 1px'
|
||||
} else {
|
||||
parentDiv.style.boxShadow = ''
|
||||
}
|
||||
}
|
||||
|
||||
submit.addEventListener('click', () => {
|
||||
submitPressed = true
|
||||
checkMarkdownInput()
|
||||
})
|
||||
easymde.codemirror.on('change', () => {
|
||||
if (submitPressed) {
|
||||
checkMarkdownInput()
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user