If I need to assign a click function dynamically, is there a way to ensure the click function is only assigned once and not duplicated?
this.click(function()
With jQuery .on() you can do something like that:
//removes all binding to click for the namespace "myNamespace"
$(document).off('click.myNamespace');
$(document).on('click.myNamespace', '.selector', function(event) {...});
//this will be also removed (same namespace)
$(document).on('click.myNamespace', '.anotherSelector', function(event) {...});