gantt.ui.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. window.loadTasks = function(event)
  2. {
  3. const $pretask = $(event.target).closest('tr').find('[name^=pretask]').zui('picker');
  4. const $task = $(event.target).closest('tr').find('[name^=task]').zui('picker');
  5. const $type = $(event.target).closest('td').attr('data-name');
  6. const $picker = $type == 'pretask' ? $pretask : $task;
  7. const $value = $type == 'pretask' ? $task.$.value : $pretask.$.value;
  8. let formData = getFormData();
  9. formData['selectedValue'] = $picker.$.value;
  10. const $linkType = $type == 'pretask' ? 'task' : 'pretask';
  11. const getTaskLink = $.createLink('execution', 'ajaxGetRelationTasks', 'projectID=' + projectID + '&executionID=' + executionID + '&taskID=' + $value + '&taskType=' + $linkType + '&appendTask=' + $picker.$.value);
  12. // 使用$.post方法提交表单数据
  13. $.post(getTaskLink, formData, function(relations) {
  14. let data = JSON.parse(relations);
  15. if(data.result == 'success')
  16. {
  17. // 处理服务器响应
  18. $picker.render({items: data.message});
  19. }
  20. else
  21. {
  22. zui.Modal.alert({message: data.message, icon: 'icon-exclamation-sign', iconClass: 'warning-pale rounded-full icon-2x'});
  23. $(event.target).zui('picker').$.setValue('');
  24. }
  25. }, 'json');
  26. }
  27. window.getFormData = function()
  28. {
  29. const form = document.querySelector('form');
  30. // 创建一个空对象来存储表单数据
  31. const formData = {};
  32. // 遍历表单中的所有输入字段并将它们存储在对象中
  33. for (let element of form.elements) {
  34. if (element.name) {
  35. formData[element.name] = element.value;
  36. }
  37. }
  38. // 返回表单数据
  39. return formData;
  40. }