Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Повесить jQuery функцию на каждую кнопку (https://javascript.ru/forum/jquery/50038-povesit-jquery-funkciyu-na-kazhduyu-knopku.html)

broadcast77 09.09.2014 00:57

Повесить jQuery функцию на каждую кнопку
 
Всем добрый день!

Тут уже создавали подобную [url="http://javascript.ru/forum/jquery/30788-obrabotka-sobytijj-pri-nazhatii-knopok.html"]http://javascript.ru/forum/jquery/30788-obrabotka-sobytijj-pri-nazhatii-knopok.html]тему/URL], но это совсем не то, что мне нужно.

Вообщем задача такова, есть множество динамически добавляемых элементов, которые генерятся php-шным кодом:

<img src='bullet_edit.png' id='editUserData".$row_counter."' title='редактировать'>


ну и на выходе получается:

<img src="../../icons/bullet_edit.png" id="editUserData1" title="редактировать">
<img src="../../icons/bullet_edit.png" id="editUserData2" title="редактировать">
<img src="../../icons/bullet_edit.png" id="editUserData3" title="редактировать">
<img src="../../icons/bullet_edit.png" id="editUserData4" title="редактировать">


Вопрос: как повесть функцию jQuery на каждую из этих кнопок?

Я пробовал эксперементировать и с .each() и с .one() ничего не помогло.

Подскажите пожалуйста как нужно. Спасибо!

Aetae 09.09.2014 01:09

<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData1" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData2" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData3" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData4" title="редактировать">

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script>
$('img[id^="editUserData"]').click(function(){
    alert(this.id)
})
</script>

broadcast77 09.09.2014 01:23

Цитата:

Сообщение от Aetae (Сообщение 329635)
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData1" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData2" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData3" title="редактировать">
<img src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif" id="editUserData4" title="редактировать">

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script>
$('img[id^="editUserData"]').click(function(){
    alert(this.id)
})
</script>

К сожалению - не работает. Айдишник же тоже как то получать. Он ведь разный у каждой картинки. Как то так наверное, но я не знаю почему не работает(
<script>
$('img[id^="editUserData"]' + id).click(function(){
    alert(this.id)
})
</script>


Что нибудь ещё можете подсказать?

broadcast77 09.09.2014 01:34

Всё. Приношу извинения.

Сделал вот так и заработало:

<script>
    $(document).ready(function(){
    $('img[id^="editUserData"]').click(function(){
        alert(this.id);
    });
     });
</script>

broadcast77 09.09.2014 11:07

И последний вопрос на засыпку - а можно ли получить только циферки индексов? Без editUserData ?

broadcast77 09.09.2014 11:14

Всё. Сам допёр))

$(document).ready(function(){
        $('img[id^="editUserData"]').click(function(){
            var idm = $(this).attr('id').replace(/editUserData/, '');
            alert(idm);
        });
    });


ТЗ))


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