diff --git a/app/assets/javascripts/task_list.js b/app/assets/javascripts/task_list.js
index 2c3bd61463eb6eb87e5c89e45f996a2f78694dfc..dbcac01e761bba724406eaa9658a6384f12a2843 100644
--- a/app/assets/javascripts/task_list.js
+++ b/app/assets/javascripts/task_list.js
@@ -49,7 +49,7 @@ export default class TaskList {
 
   update(e) {
     const $target = $(e.target);
-    const { lineNumber, lineSource } = e.detail;
+    const { lineNumber, lineSource, checked } = e.detail;
     const patchData = {};
 
     patchData[this.dataType] = {
@@ -58,6 +58,7 @@ export default class TaskList {
       update_task: {
         line_number: lineNumber,
         line_source: lineSource,
+        checked: checked,
       },
     };
 
diff --git a/app/controllers/projects/issues_controller.rb b/app/controllers/projects/issues_controller.rb
index fd5f3eeaa99988a3a28b81de2b449d6f1ff938c5..aed28d49f5e1f28de21d62594842c937dc32d9b2 100644
--- a/app/controllers/projects/issues_controller.rb
+++ b/app/controllers/projects/issues_controller.rb
@@ -246,7 +246,7 @@ class Projects::IssuesController < Projects::ApplicationController
       task_num
       lock_version
       discussion_locked
-    ] + [{ label_ids: [], assignee_ids: [] }]
+    ] + [{ label_ids: [], assignee_ids: [], update_task: [:line_number, :line_source, :checked] }]
   end
 
   def authenticate_new_issue!