0

ドキュメントに2つの入力ボタンがあり、メインのdiv'container'に含まれています。

私がそれらに使用したコードは次のとおりです。

<input id="anotherservices" type="button" value="Add Another Service">
<input id="addmultiterms" type="button" value="Go">

ここで、最初のボタン、つまり「Add Another Service」の値のボタンをクリックすると、上記の両方のボタンがフェードアウトする必要があります。その後、ajaxリクエストが実行されます。次に、両方のボタンがメインの「コンテナ」divに再び追加されます。

これは再帰的です。つまり、新しく追加された最初のボタンをもう一度クリックすると、新しく追加されたボタンが両方ともフェードアウトし、別のセットをドキュメントに追加する必要があります。

これを実現するために使用されるコードは次のとおりです。

$('#anotherservices').live("click",function(e)
{ 
$(this).fadeOut();
$('#addmultiterms').fadeOut();

/* ajax request goes here */ 

$('#container').append('<input id="anotherservices" type="button" value="Add Another Service">');

$('#container').append('<input id="addmultiterms" type="button"  value="Go">');

ただし、値が「Go」の2番目のボタンは、実行時にdomに追加されていないため、フェードアウトしません。

どうすればこれを達成できますか?

4

2 に答える 2

1

fadeOut()nnnnnnがコメントで述べたように、要素を削除しません。メソッドを使用fadeIn()して、ボタンを再度表示できます。を使用してボタンの値を変更できます

$("#addmultiterms").attr('value', 'Go');

2 番目のオプションは、新しいボタンを追加する前にボタンを削除することです。次のコードを使用してボタンを削除できます。

$("#addmultiterms").remove();
于 2013-01-11T05:05:59.817 に答える
0

要素を動的に追加する場合は、

$(document).ready(function (){
     -- Your Function goes here
})

なぜ、fadeOut などを初めて追加するときは、最初に作成する必要があるため、削除などの他のロジックに従うことができます..ちなみに、明らかに「削除」を使用する必要があります... .

お役に立てれば......

于 2013-01-11T05:13:32.917 に答える