Проблема (как сказал grilix) в том, что событие «пузырится» в DOM, поэтому есть простое решение, вам просто нужно отменить этот пузырьковый эффект.
Пузырь относится (на английском языке) к событию, запускаемому на ВСЕХ элементах, на которые влияет его положение в документе. Итак, в вашем примере событие "click" получено (в этом порядке) ТЕЛОЙ, затем родительским (.question) DIV, затем другим DIV и, наконец, INPUT.
Чтобы отменить этот пузырь, вы можете пойти по пути jQuery, вызвав метод stopPropagation в функции обратного вызова, например:
$(function() {
$(".question div").click(function(event) {
$(this).children("input").click();
event.stopPropagation();
});
});
Простой javascript-способ потребует от вас использования метода cancelBubble, но я полагаю, что он выходит за рамки вашего вопроса.
Привет,
Manolo