2013-11-14 5 views
1

привета я новичок в JQuery ...Как получить идентификатор элемента, который называется функция

У меня есть несколько ссылки якоря в моем проекте ...

<a href="#" id="1" class="delete" onclick="dele()"> Remove1 </a> 
<a href="#" id="2" class="delete" onclick="dele()"> Remove2 </a> 
<a href="#" id="3" class="delete" onclick="dele()"> Remove3 </a> 
<a href="#" id="4" class="delete" onclick="dele()"> Remove4 </a> 

function dele() 
    { 
     fid= //here i want id of that element which called it 
     $.ajax({ 
      url : 'ajax.php', 
      data : {delet:'delet',fid:fid}, 
      type : 'POST', 
      success : function(data) 
      { 
       $("#showform").html(data); 
        alert(data); 
      } 
     }); 
    } 

, например

если я нажимаю на Remove1 тогда я хочу это идентификатор сказать ,

если я нажимаю на Remove2 тогда я хочу это идентификатор сказать и так далее ...

я пытался сделать это $ («Удалить»). Нажмите(), но я не может использовать его, потому что это вызывает проблемы для моего проекта ...

здесь ID я генерируя через базу данных ...

вы можете предложить, как я могу получить идентификатор ???

Заранее спасибо ..

ответ

2

Попробуйте

<a href="#" id="1" class="delete" onclick="dele(this.id)"> Remove1 </a> 

Script

function dele(id) 
    { 
     fid= id //here your id 
     $.ajax({ 
      url : 'ajax.php', 
      data : {delet:'delet',fid:fid}, 
      type : 'POST', 
      success : function(data) 
      { 
       $("#showform").html(data); 
        alert(data); 
      } 
     }); 
    } 

DEMO

+0

спасибо, что приятель работал как шарм –

0

Попробуйте как

function dele() 
{ 
    var fid= $(this).attr('id'); 
    $.ajax({ 
     url : 'ajax.php', 
     data : {delet:'delet',fid:fid}, 
     type : 'POST', 
     success : function(data) 
     { 
      $("#showform").html(data); 
       alert(data); 
     } 
    }); 
} 

Или даже вы можете отправить идентификатор непосредственно из функции вызывающего абонента, как

<a href="#" id="4" class="delete" onclick="dele(this.id)"> Remove4 </a> 
+0

Знал ли этот элемент в этом случае? – h2ooooooo

+0

Я уже пробовал это, но не работал ... –

+0

'this' будет представлять текущий экземпляр элемента с щелчком – Gautam3164

1

Видел, как вы используете JQuery для вашей логики, то почему бы не использовать его, чтобы связать события и отдельные JS из HTML целиком? Попробуйте это:

<a href="#" id="1" class="delete"> Remove1 </a> 
<a href="#" id="2" class="delete"> Remove2 </a> 
<a href="#" id="3" class="delete"> Remove3 </a> 
<a href="#" id="4" class="delete"> Remove4 </a> 
$('.delete').click(function() { 
    fid = this.id; // this = the element which was clicked on 
    $.ajax({ 
     url : 'ajax.php', 
     data : { delet: 'delet', fid: fid }, 
     type : 'POST', 
     success : function(data) { 
      $("#showform").html(data); 
       alert(data); 
     } 
    }); 
}); 

я не могу использовать $ нажмите() ... BCZ это влияет на мою функциональность, когда я вернусь ответ от PHP-файла ("удалить."). .. я использовал это же, но после того, как я видел, что моя функция не работает, если я использую этот способ

Если вы прилагая .delete элементы после загрузки DOM, вы должны изменить выше, чтобы использовать делегированный селектор:

$(document).on('click', '.delete', function() { 
    // rest of the code... 
}); 
+0

Я упомянул в своем вопросе, что я не могу использовать $ (" .delete "). click() ... bcz влияет на мою функциональность, когда я возвращаю ответ из файла php .. Я использовал это, но после того, как увидел, что моя функциональность не работает, если я использую этот способ –

+0

Это звучит например, вам нужен делегированный обработчик событий: '$ (document) .on ('click', '.delete', function() {...});' –

+0

@ 404NotFound Я обновил свой ответ для вас –

0

Попробуйте

<a href="#" id="1" class="delete" onclick="dele(this)"> Remove1 </a> 
<a href="#" id="2" class="delete" onclick="dele(this)"> Remove2 </a> 
<a href="#" id="3" class="delete" onclick="dele(this)"> Remove3 </a> 
<a href="#" id="4" class="delete" onclick="dele(this)"> Remove4 </a> 


function dele(element) 
{ 
    fid= element.id; 
    $.ajax({ 
     url : 'ajax.php', 
     data : {delet:'delet',fid:fid}, 
     type : 'POST', 
     success : function(data) 
     { 
      $("#showform").html(data); 
       alert(data); 
     } 
    }); 
} 

вместо только ид если и передать элемент и может получить некоторые другие свойства элемента также.

Смежные вопросы