Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Ткните носом куда копать (https://javascript.ru/forum/jquery/26000-tknite-nosom-kuda-kopat.html)

CTPECC 22.02.2012 10:35

Ткните носом куда копать
 
Проблема следующего рода. Есть кусочек кода PHP, который должен формировать переменные и вызывать функцию на jquery для удаление либо ссылки на документ, либо документа полностью (в зависимости от переменной is_alone).

echo "<input id='Delete' type = 'button' name = 'Delete' value = 'Удалить'
			onClick=\"ConfirmPopup('$msg',
			    '$is_alone',
			    "viewdoc/annotation.php?Edit21=3&predmet_id=$predmet_id&gpp_id=$gpp_id&FileId1=$file_id1&AbsId1=$abs_id1&del_all=0',
			     "viewdoc/annotation.php?Edit21=3&predmet_id=$predmet_id&gpp_id=$gpp_id&FileId1=$file_id1&AbsId1=$abs_id1&del_all=1'
			          ); \">";


Данные подставляются в следующую функцию
function ConfirmPopup(text, is_alone, del_link, del_doc)
{
    if(parseInt(is_alone) == 1)
        {
	    $("#popup-only-link").hide();
            $("#popup-body-footer").hide();
            $("#popup").show('slow');
            $("#popup-all-document").click(function()
                                    {
                                        //alert(deleteDocument);
                                        $('#popup').hide('slow');
                                        $('#tab-ann').load(del_doc);
                                        //$('#popup-all-document').unbind('click');
                                        return false;
                                    });	
        }
        else
        {
			$("#popup-only-link").show();
            $("#popup-body-footer").html('При удалении документа ссылки также буду удалены. Если Вы хотите, чтобы этот документ был доступен в других дисциплинах, удалите только ссылку для данного курса');
            $("#popup-body-footer").show();
            $("#popup").show('slow');
            $("#popup-only-link").click(function()
                                        {
                                            //alert(deleteLink);
                                            $('#popup').hide();
                                            $('#tab-ann').load(del_link);
                                            //$('#popup-only-link').unbind('click');
                                            return false;

                                         });
                  $("#popup-all-document").click(function()
                                        {
                                            //alert(deleteDocument);
                                            $('#popup').hide('slow');
                                            $('#tab-ann').load(del_doc);
                                            //$('#popup-all-document').unbind('click');
                                            return false;
                                        });
        }      */
        $("#popup-no").click(function(){$('#popup').hide(); });

}


Проблема в следующем: само приложение почти полностью реализовано на AJAX'е, и при вызове этой функции для нескольких предметов получаю накопление del_link и del_doc. Т.е. вызвав 5 раз функцию получаю 10 строк... почему они не очищаются для функции???

Даже если я нажимаю на кнопку "Отмена", а потом вызываю опять эту функцию получаю уже 2 дубликата переменных.

CTPECC 22.02.2012 11:17

Вложений: 1
Попробовал писать переменные del_link, del_doc в console. Вызвал 3 раза функцию. Результат на картинке


Часовой пояс GMT +3, время: 01:21.