Потвърждение след щракване върху Хипервръзка

Така че имам хипервръзка, която, ако бъде натисната, извършва основно действие (изтриване на нещо от базата данни), така че искам поле за потвърждение, след като бъде натиснато, така че да не правят грешки.

Моят код за хипервръзката е:

<a href='/bg*****.php?Number3=1222&AssignedTo=$12331'>[x]</a>

Не съм сигурен за Javascript и знам, че това има основна роля в него... Моля, помогнете? PS URL адресът на хипервръзката е произволен и има много от тях, така че, моля, не го правете така, че да работи само с една връзка


person DogPooOnYourShoe    schedule 06.01.2011    source източник


Отговори (4)


опитвам

<a href='/bg*****.php?Number3=1222&AssignedTo=$12331' onclick="return confirm('Are you sure you want to delete?')" >[x]</a>
person Anush Prem    schedule 06.01.2011

Дайте на вашия href име на клас и го насочете с нещо като jQuery/straight JS, след което направете следното:

var r=confirm("Are you sure you want to delete?");
if (r==true){
     return true;
{
else {
     return false;
}
person benhowdle89    schedule 06.01.2011

Добавете клас към a таговете, което означава, че искате поле за потвърждение.

<a href="/bgfile.php" class="confirm">Link</a>

След това прикачете манипулатор на събития към тези:

var links = document.getElementsByClassName('confirm');
for (var i = 0; i < links.length; i++) {
    links[i].onclick = function() {
        return confirm("Are you sure?");
    };
}

Или с помощта на jQuery:

$('.confirm').live('click', function(){
    return confirm("Are you sure?");
});
person Rocket Hazmat    schedule 06.01.2011
comment
Това изглежда като отговора, но моят код просто отива направо към връзката и не се занимава с потвърждението. Примерите, които използвах, бяха jQuery и добавих правилния клас към моята хипервръзка. - person DogPooOnYourShoe; 06.01.2011
comment
Опитайте $('.confirm').live('click',function(){return confirm("Are you sure?");}); вместо това. - person Rocket Hazmat; 06.01.2011

Ето отговор за по-нов jQuery с допълнителна функционалност за тези, които искат персонализирани съобщения за потвърждение.

$('body').on('click', '[data-confirm]', function(){
    var msg = $(this).attr('data-confirm');
    return confirm(msg);
});

Използвате data-confirm вместо .confirm. Вашият HTML изглежда както следва:

<span data-confirm="Are you sure?">delete</span>
person Vael Victus    schedule 05.02.2013