あなたはjQueryを使って質問にタグを付けました。なぜあなたはコンテンツを構築するためにライブラリを使用していないのでしょうか?
var content = [];
for (var i = 0; i < data.routesout.length; ++i) {
content.push($('', { 'for': 'route' + i, text: data.routesout[i].name }));
content.push($('<input/>', { change: yourEventHandler, type: 'text', name: 'route' + i, id: 'route' + i, value: date.routesout[i].percent, change: yourEventHandler }));
}
このようにすることで、ハンドラ要素を構成するときにハンドラ要素を要素ごとバインドできます。 (私は "変更"を例として使用しましたが、同じ方法で必要なイベントのハンドラをバインドすることができます)。
最後に、作成した要素をすべて追加することもできますし、配列を作成する代わりに追加することもできます。