0

AJAXとPHPを使用してデータベースにデータが入力されたページがあります。「アイテムをリストに追加する」へのリンクがあり、リンクをクリックすると、qTipボックスがポップアップして、追加されたことを確認します。ただし、qTipを使用してこれを実行しようとすると、アイテムの追加に使用するonClickイベントが2回発生します。

これは、ページにデータを入力し、新しく作成されたdivのツールチップを初期化するAJAXの応答関数です。

xmlhttp.onreadystatechange=function() {
      if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("contentdiv").innerHTML=xmlhttp.responseText; updateTooltip();}
}

これは私のツールチップ初期化関数です

function updateTooltip() {  
    $(".Tooltip").qtip({
       content: "<a href='blah.html' target='_blank'>Item Added</a>",
       show: 'click',
       hide: 'none',
       style: { 
           width: 500,
           height: 12,
           name: 'light'
       },
       position: {
            corner: {
                target: 'center',
                tooltip: 'center'
            }
        }
     });     
}

これは、onClickイベントとのリンクを生成するPHPコードです

echo "<a class='Tooltip' target='_blank' onClick='addItem();'> Add To List </a>";

qTipを使用すると、onClickは2回しか起動しません。それ以外の場合は、1回クリックしたときにaddItem()が1回だけ起動するため、完全に正常に機能します。

4

0 に答える 0