0

入力変更に関する関数があります。これは、すでに存在する最初の入力に対して機能しますが、jscriptがappendToを使用して別
のInputオブジェクトを追加すると、同じ関数は機能しません。

$("input[type=file]").change(function() {
$('<input name="fails[]" type="file" />').appendTo('#input_lauki');
$('<a href="#" onclick="dzest(this);return false" class="link" name="dzest" style="font-weight:normal; display:inline;">Izdzēst</a><br/>').appendTo('#input_lauki')
$('.link').css('display','inline');

});

ありがとうございました!

4

3 に答える 3

0

$ .onを使用して、DOMに追加された新しい要素もバインドする必要があります。

$.on("change", "input[type=file]", function() {
    $('<input name="fails[]" type="file" />').appendTo('#input_lauki');
    $('<a href="#" onclick="dzest(this);return false" class="link" name="dzest" style="font-weight:normal; display:inline;">Izdzēst</a><br/>').appendTo('#input_lauki')
    $('.link').css('display','inline');

});

または、古いバージョンのjQueryを使用している場合は、ドキュメントで読む必要のある特別な処理があるため、ライブです。

于 2012-04-26T08:18:08.843 に答える
0

変更イベントハンドラーを定義したとき、定義された量の入力ファイルがあったため、後で挿入する新しい入力には、そのイベントに対して定義されたハンドラーがありません。

代わりに、イベントを親にキャプチャする必要があります#input_lauki

$("#input_lauki").on('change', 'input[type=file]', function() {
 ...
}

フィドルの例:http://jsfiddle.net/TwWEt/

于 2012-04-26T08:22:03.630 に答える
-1

あなたは試すことができます

$('input[type=file]').on('change',function(){

 //your code


});
于 2012-04-26T08:19:25.747 に答える