2014-12-01 2 views
0

У меня есть следующая проблема. Код ниже дает мне ссылку для выполнения удаления строки в моей таблице.Отключить <a> после нажатия на него

Эта ссылка вызывает подтверждение, чтобы пользователь подтвердил или не удалил.

Что я хочу сделать после подтверждения: <a> отключается. Как мне это сделать?

<a class="actionIcon" onclick="if (confirm('Tem a certeza que quer fechar o ticket \&quot;You can \&quot;?')) { var f = document.createElement('form'); f.style.display = 'none'; this.parentNode.appendChild(f); f.method = 'post'; f.action = this.href;var m = document.createElement('input'); m.setAttribute('type', 'hidden'); m.setAttribute('name', 'sf_method'); m.setAttribute('value', 'delete'); f.appendChild(m);var m = document.createElement('input'); m.setAttribute('type', 'hidden'); m.setAttribute('name', '_csrf_token'); m.setAttribute('value', 'cd78fd1b6aa79fa78c338a94951912f2'); f.appendChild(m);f.submit(); };return false;" href="/qdPM/index.php/tickets/delete/id/4162/projects_id/71/redirect_to/ticketsList"><img title="Fechar" class="iconDelete"></a> 
+0

Вы уже манипулируете формой, так что вы пытались решить это самостоятельно? – kero

+6

Мое добро, почему на Земле это все INLINE? сделать функцию, вызвать ее и добавить класс, чтобы отключить ссылку! Изменить: мой скроллер просто совершил самоубийство. – briosheje

+0

lol, если вы уже используете onClick ... затем удалите тег, добавьте еще один элемент, onClick проверьте var, после того, как подтвердите put var с другим значением et voilà, проблема решена! –

ответ

2

Как быстро исправить, вы можете просто добавить: this.onclick = function() {return false;} в обработчик событий.

Но как более надежное решение, вы действительно, действительно, действительно НЕ должны использовать встроенные обработчики событий, особенно не для чего-то столь сложной.

0

с JQuery

<a class="actionIcon" id="action"><img title="Fechar" href="/qdPM/index.php/tickets/delete/id/4162/projects_id/71/redirect_to/ticketsList" class="iconDelete"></a> 

$(function() 
{ 
    $("#action").click(function() 
    { 
     if (confirm('Tem a certeza que quer fechar o ticket \&quot;You can \&quot;?')) 
     { 
      var f = document.createElement('form'); 
      f.style.display = 'none'; 
      this.parentNode.appendChild(f); 
      f.method = 'post'; 
      f.action = this.href; 
      var m = document.createElement('input'); 
      m.setAttribute('type', 'hidden'); 
      m.setAttribute('name', 'sf_method'); 
      m.setAttribute('value', 'delete'); 
      f.appendChild(m); 
      var m = document.createElement('input'); 
      m.setAttribute('type', 'hidden'); 
      m.setAttribute('name', '_csrf_token'); 
      m.setAttribute('value', 'cd78fd1b6aa79fa78c338a94951912f2'); 
      f.appendChild(m); 
      f.submit(); 
     } 

     $(this).attr("disabled", true); 
     return false; 
    }); 
}); 
0

1 - CSS> Создать класс с инвалидами;

a.ActiveAnchor { 
    pointer-events: none; 
    cursor: default; 
} 

2- Измените класс на jquery;

$("#AchorID").toggleClass(className, addOrRemove); 
Смежные вопросы