diff options
author | Frederick Muriuki Muriithi | 2022-08-04 04:52:58 +0300 |
---|---|---|
committer | Frederick Muriuki Muriithi | 2022-08-04 04:52:58 +0300 |
commit | f895288441953ea1f52095ff421429d377cd37a1 (patch) | |
tree | 94bdafa8dc0e5ca2e793f1bce4d147eed016a28d /qc_app | |
parent | 3c47afe8092ff9f5bc152320e724c07973c1941a (diff) | |
download | gn-uploader-f895288441953ea1f52095ff421429d377cd37a1.tar.gz |
UX: Enable selecting radio by clicking anywhere on the row
Ease the selection of a radio button by allowing the user to click on
any of the table cells that are in the same row as the radio button of
concern.
Diffstat (limited to 'qc_app')
-rw-r--r-- | qc_app/static/js/select_platform.js | 11 | ||||
-rw-r--r-- | qc_app/templates/select_platform.html | 13 |
2 files changed, 24 insertions, 0 deletions
diff --git a/qc_app/static/js/select_platform.js b/qc_app/static/js/select_platform.js index d7541fa..d78877e 100644 --- a/qc_app/static/js/select_platform.js +++ b/qc_app/static/js/select_platform.js @@ -57,3 +57,14 @@ function update_genechips(event) { setup_genechips(genec[species_elt.value.toLowerCase()]); } } + +function select_row_radio(row) { + radio = row.getElementsByTagName( + "td")[0].getElementsByTagName( + "input")[0]; + if(radio === undefined) { + return false; + } + radio.setAttribute("checked", "checked"); + return true; +} diff --git a/qc_app/templates/select_platform.html b/qc_app/templates/select_platform.html index 131003d..3ceae01 100644 --- a/qc_app/templates/select_platform.html +++ b/qc_app/templates/select_platform.html @@ -68,5 +68,18 @@ <script type="text/javascript"> document.getElementById( "species").addEventListener("change", update_genechips); + document.getElementById( + "genechips-table").getElementsByTagName( + "tbody")[0].addEventListener( + "click", + function(event) { + if(event.target.tagName.toLowerCase() == "td") { + return select_row_radio(event.target.parentElement); + } + if(event.target.tagName.toLowerCase() == "td") { + return select_row_radio(event.target); + } + return false; + }); </script> {%endblock%} |