checks whether the specified link is correct

boolean isLinkAllowed(object link);
linkobjectthe link object
booleantrue, if the link is correct. Otherwise, false


const link = {
if(gantt.isLinkAllowed(link))// -> false (because source==target)


The cases when a link is considered as incorrect:

  1. The source task's id is equal to the target task's id.
  2. If the type is set to a value that is not 0, 1, 2, or 3.
  3. If the link failed the validation.
  4. If the link is created from the project task to its sub-task. The dates of the project task depend on the dates of children tasks.

The method invokes the onLinkValidation event. Therefore, if the onLinkValidation event returns false, a link will be also considered as incorrect.

Note, there is the 2nd way to call the method:

gantt.isLinkAllowed(from, from_start, to, to_start )


  • from - (string, number) the id of the source task
  • from_start - (boolean) true, if the link is being dragged from the start of the source task, false - if
    from the end of the task
  • to - (string, number) the id of the target task( 'null' or 'undefined', if the target task isn't specified yet)
  • to_start - (boolean) true, if the link is being dragged to the start of the target task, false - if
    to the end of the task

For example, the code above you alter as in:

//var link = {
//    source:2,
//    target:2,
if(gantt.isLinkAllowed(2, true, 2, true))// -> false (because source==target)
    //do something
Back to top