Collision2D enable/disable problem

So i have my player and a box(has a non trigger box collider2d) that i tagged with “Player” for testing. My player has a rigidbody2d and so does the box, they are not kinematic. I put a box collider which is a trigger as a child to the player. The box collider does not have a rigidbody. When i come close to the box"Player" i press F to enable the box collider(a child to the player) the function OnTriggerEnter… gets called and i get a log message and the box collider gets disabled; HOWEVER if i press f again while the disabled box collider is still in the box"Player" it does get enabled but DOES NOT call the function OnTriggerEnter… When i move and press f, then come close to the box"player" the OnTriggerEnter… gets called again. So in summary my problem is that i cant spam F and enable/disable the box collider because while it appears in the box"player" it does not call the function OnTriggerEnter.
To my box collider this script is attached:

public int dmg = 20;
public bool damaging = false;

void OnTriggerEnter2D(Collider2D col){

	if (col.CompareTag ("Player") && col.isTrigger != true && damaging == false) {
		damaging = true;

		Debug.Log ("Entered and damaged");
		col.SendMessageUpwards ("Damage", dmg);
	Debug.Log ("Entered");

void OnTriggerExit2D(Collider2D col){
	damaging = false;
	Debug.Log ("Left");

Is this just how it works? if so is there any way to go around that? If not is it a mistake on my part?

I got around this problem by using Physics2D.BoxOverlap when i click attack instead of enabling and disabling the collider. Using the function above is actually a very good and clean way to do fightin g because you can see which collider u overlapped with.