2016-01-31 1 views
0

Я попытался использовать onClick в теге <a>, но он не работает. Я пытаюсь захватить 777 в переменную таким образом, что я могу использовать ее позже в коде. Я хотел щелкнуть по изображению, тогда он отображает окно оповещения таким образом, что я знаю, что он работает, но не работает.Сохранение идентификатора в переменной при нажатии после вызова AJAX

$(function() { 
    $.ajax({ 
     async: false,  
     cache: false, 
     dataType: 'json', 
     url: 'http://www.getitfree.us/api/posts.json?filter=popular&limit=2', 
     type: "get", 
     success: function(json) { 
     var arr = ['51ae281f1521021885573121', '51b7af297665ebc546c39a34']; 
     for (var i = 0; i < arr.length; i++) { 
      $("#output").append("<div>" + "<a href='./next_page.html' target='_blank' id='777' onClick='Click(this.id)'>" + "<img class='img-responsive' alt='advertisement image' src='" + json.data[arr[i]].images['0'] + "'>" + "</a>" + "<p class='adjust_pTitle'>" + json.data[arr[i]].title + "</p>" + "</div>"); 
     } 
     }, 
     error: function(json) { 
      throw new error(); 
     } 
    }) 
    }); 

    function Click() { 
    alert("clicked");  
    }; 
+0

дает нам часть вас HTML код. Какой элемент вы пытаетесь определить для события click? что вы подразумеваете под «захватом 777»? –

+0

Спасибо за ответ. У меня есть только пустой div, который я добавляю для:

В принципе, я хочу поместить числа 777 в переменную, чтобы позже использовать в моем javascript. –

+0

Из описания кажется, что «консоль» может быть более полезной. См. Вопрос: [Что такое console.log?] (Http://stackoverflow.com/questions/4539253/what-is-console-log). Вы также можете использовать атрибут data: [Как получить атрибут data-id?] (Http://stackoverflow.com/questions/5309926/how-to-get-the-data-id-attribute) – Roberto

ответ

0

Попробуйте дать класс, например. .anchor прилагаемого элемента и использовать метод on() для прослушивания события щелчка:

$("#output").append("<div>" + "<a href='./next_page.html' class='anchor' target='_blank' id='777'>" + "<img class='img-responsive' alt='advertisement image' src=''>" + "</a>" + "<p class='adjust_pTitle'>Title</p>" + "</div>"); 
 

 
$(document).on('click', '.anchor', function(e) { 
 
    e.preventDefault(); 
 
    alert($(this).attr("id")); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div id="output"></div>

+0

Спасибо, что сработало. Я постарался вас поддержать, но у меня еще нет 15 очков. Будет, безусловно, выше, когда я соберу достаточно очков. Еще раз спасибо. –

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