элемент #err_ok сначала не существует, поэтому обработчик .click () к нему не применяется.
Вы можете решить это, поставив
$("#err_ok").click(function () {
$("#sub_error").fadeOut("slow");
});
в функции и вызов функции после создания элемента в DOM.
Редактировать: это должно быть полное решение:
$("#sub_error").fadeTo(200, 0.1, function() {
$("#sub_error")
.html(error.join("<br/><br/>"))
.append('<br/><input type="button" name="err_ok" id="err_ok" value="ok">')
.addClass('subboxerror')
.fadeTo(900, 1);
bindEvents();
});
function bindEvents() {
$("#err_ok").click(function() {
$("#sub_error").fadeOut("slow");
});
}
Существует также функция " live ", которая также связывает события с будущими созданными элементами DOM.