Возможно ли, что код, который вы вставили сюда, выполняется до того, как новый узел DOM будет фактически доступен? Если это так, вы можете попробовать использовать метод .ready () и прикрепить свой клик после факта.
$("#id").ready(function() {
$("#id").click(function() { alert("test"); }
});
РЕДАКТИРОВАТЬ: Я сам новичок в jQuery, и я подумал, что метод .ready () может быть использован не только объект документа. Если это не соответствует действительности, похоже, что существует плагин jQuery jQuery.Listen , который делает что-то похожее:
// Listen to clicks, even for newly added instances of #id.
jQuery.listen( 'click', '#id', function(){ alert("test"); });
Примерно так было бы неплохо, если бы вы могли использовать классы для динамически добавляемых якорей.
// Listen to clicks for anything with the class "dynamicAnchors", even newly
// added anchors.
jQuery.listen( 'click', '.dynamicAnchors', function(){ alert("test"); });