Если вы прикрепите обработчик события click к новому input
, он будет работать нормально:
var input = $('<input name="image" type="file"/>');
input.click(function() {
//Do something
});
$(this).append(input);
input.click();
Если, с другой стороны, вы хотите, чтобы новый input
взял обработчик события, который был определен ранее, вам придется использовать live
, когда вы изначально присоединяете событие (в этом примере обработчик события click для всех элементов input
, включая те, которые добавляются в DOM позже, например, ваш):
$("input").live("click", function() {
console.log("other clicked");
});