2011-10-27 2 views
0

ユーザーの選択に応じていくつかのdivを入力した後、データを消去してすべてを開始するオプションを与えたいと思います。.empty()を使用した後にdivは再集計されません

$('#options img').click(function() { 
    var imageName = $(this).attr('alt'); 
    var chopped = imageName.split('.'); 
    $('#titleImage').empty(); 
    $('#titleImage') 
     .prepend(chopped[0]); 
    $img = $(this); 
    $('#_targetDiv img').attr('src', $img.attr('src')); 
}) 

そして、すべてのdivをクリアする:

$('#reset').click(function() { 
    $('div[id^=title], div[id$=_targetDiv]').empty(); 
}); 

しかし、最初からやり直すために「リセット」をクリックした後の画像と私が使用しているキャプションにdiv要素を埋めるために

メニューからイメージを選択すると、タイトルのキャプションは表示されますが、ターゲットdivは空のままです。なぜそれが起こり、どうすれば修正できますか?

ありがとうございます。

答えて

0

私はここで、この問題を複製しました:http://jsfiddle.net/nrabinowitz/tEkQb/1/

あなたのHTMLは私のHTMLのようなものであるならば、問題は、あなたがクリックしたときに更新しようとしている要素を削除していることです。あなたはあなたが持っているすべては、そのあなたのimgタグを想定し

<div id="_targetDiv"></div> 

で、_targetDiv要素に.empty()を呼び出し、

<div id="_targetDiv"> 
    <img src="default.jpg"> 
</div> 

しかし、あなたは[リセット]をクリックした後:あなたが出て起動すると、次のようなものを持っています私はそれらのうちの1つを使用した最後の時でしたか?)、あなたは単にsrcをリセットして、要素を削除しないでください。

+0

あなたは爪を打つ。私はsrcのsttrをblank.gifのデフォルトのimgに変更しました - 私はまだそれらを頻繁に使用しています:) - 問題は解決しました。お時間を割いていただきありがとうございます! – brunn

関連する問題