Hello hope have a wonderfull weekend
I'm wondering is there a setting in canvas that I can limit the professor to not grade empty online submission or a js code that can help with that?
@AbrahamOquendo
There is no setting in Canvas to prevent grading an unsubmitted assignment. However, you can remove the grade input box by uploading a custom Javascript (JS).
Please note the following JS will only work on the web browser version of Canvas, and users can always disable it
The first script will hide the grade input box from /gradebook page and the flyout grading tray (For non Root Admin users)
if (window.location.href.match('/gradebook')) { if (!(ENV.current_user_roles.indexOf('root_admin') > -1)) { //If not Root Admin then hide grade input box var style = (function () { // Create the <style> tag var style = document.createElement("style"); style.appendChild(document.createTextNode("")); // Add the <style> element to the page document.head.appendChild(style); return style; })(); //CSS to hide grade input boxes style.sheet.insertRule('div.Grid__GradeCell__GradingSchemeInput, .Grid__GradeCell__PointsInput, .Grid__GradeCell__PercentInput { display:none !important;}', 0); document.addEventListener('click', function (event) { if (event.target.matches('#grade-detail-tray--grade-input')) { alert("Please use SpeedGrader to grade"); document.getElementById('grade-detail-tray--grade-input').disabled = true; }; }); }; }
The second script will hide the grade input box and rubric within the SpeedGrader
if (window.location.href.match('/gradebook')) { if (!(ENV.current_user_roles.indexOf('root_admin') > -1)) { //If not Root Admin var style = (function () { // Create the <style> tag var style = document.createElement("style"); style.appendChild(document.createTextNode("")); // Add the <style> element to the page document.head.appendChild(style); return style; })(); style.sheet.insertRule('div.Grid__GradeCell__GradingSchemeInput, .Grid__GradeCell__PointsInput, .Grid__GradeCell__PercentInput { display:none !important;}', 0); document.addEventListener('click', function (event) { if (event.target.matches('#grade-detail-tray--grade-input')) { alert("Please use SpeedGrader to grade"); document.getElementById('grade-detail-tray--grade-input').disabled = true; $('span:contains("Excused")').remove(); }; }); }; } // SpeedGrader Hide if (window.location.href.match('/gradebook/speed_grader?')) { console.log("In SpeedGrader Page") SpeedGraderCheck(); //Run script again when users use the dropdown to change to another student var pushState = history.pushState; history.pushState = function () { pushState.apply(history, arguments); SpeedGraderCheck(); console.log("URL Change"); }; }; function SpeedGraderCheck() { var currentURL = window.location.href; var courseID = currentURL.match(/\/courses\/(\d+)/g); var asID_Reg = /(?:^|assignment_id)=(\d*?)(?:\D|$)/g; var asID_Result = asID_Reg.exec(currentURL); var assignment_id = asID_Result[1]; var checkExist = setInterval(function () { if (window.location.href.indexOf('student_id=') > -1) { clearInterval(checkExist); var NewCurrentURL = window.location.href; var stdID_Reg = /(?:^|student_id)=(\d*?)(?:\D|$)/g; var stdID_Result = stdID_Reg.exec(NewCurrentURL); var student_id = stdID_Result[1]; //Call API to check the submission status $.get('/api/v1' + courseID + '/assignments/' + assignment_id + '/submissions/' + student_id, function (response) { if (response['workflow_state'] == 'unsubmitted') { //Call API to check whether the assignment require submission $.get('/api/v1' + courseID + '/assignments/' + assignment_id, function (response) { if (response['submission_types'][0] != 'none') { console.log("No Submission") $('#grading-box-extended').attr('style', 'display: none !important'); $("button[class='toggle_full_rubric edit btn']").attr('style', 'display: none !important'); } else { console.log("No Submission Required") } }) }; }); } }, 500); };
Hello! I'm new to Canvas as of Spring Semester 2026 and I am curious if there is a key detailing the meaning of various icons that present next to assignments. The 3 I see most often are (a) a green circle with a stick figure in it: (b) what looks like a rocket heading north east: and (c ) a piece of paper with a pencil on…
With the new SpeedGrader UI, we are seeing student names appear in the page title even when the “Hide student names” setting is enabled. When using Classic Quizzes, there is no option within the quiz settings to enable anonymous grading, so we rely on instructors using the hide student names setting in SpeedGrader to…
Speedgrader chaning file name when being downloaded. Speedgrader: When downloading a submitted assignment, the file name is being changed to an unrecognizable name — (Student's actual name was part of the file name — changed for privacy.) Ideas???
We are all familiar with the standard Course Calendar, where assignment due dates are automatically added. However, at my institution, we structure our assignments as Challenges that develop over a period of time, rather than just a single deadline. Currently, the calendar only highlights the "end point." It would be a…
The current placement of the "Submit" button creates a "slip" in user behavior where habit-clicking "Next" leads to an accidental final submission. I think Canvas could easily fix this by: Moving the Submit button away from the navigation buttons (maybe above the question instead of below it) and/or Adding a "Confirm…