|
|
|
| Здравствуйте!
Есть html код
<div class="music" id="audio1">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(1);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more1">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
<div class="music" id="audio2">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(2);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more2">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
<div class="music" id="audio3">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(3);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more3">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
|
Здесь вот как бы 3 строки и у них есть свой айди aduio1, audio2, audio3 , но таких строк может быть 500-1000000 и будет айди audio500....
Вот...
Мне необходимо чтобы, по клику на любой из этих дивов мне вывело цифру из его айди, т.е. если кликнули на блок 346 , а он имеет ид aduio346, то необходимо чтобы с помощью джаваскрипт это 346 записалось в переменную s например...
Вот что пробовал:
$(document).click(function(e){
var str = e.target;
var g = $(str).parents('div[id]').attr('id');
var patt = new RegExp("audio(\\d+)");
alert(patt.exec(q));
});
|
Здесь следующие ошибки:
1.Необходимо чтобы дейтсиве js выполнялось только на блоках с id в которых есть слово audio , т.е. $(document).click(function(e){ както надо заменить на $('div[id]').click......но пробовал, не получается
2.Следующая ошибка заключается в том что алерт не выскакивает когда кликаем по div=icon и после закрытия последнего дива (moreN)
3.И третья ошибка в том что алерт выскакивает такого вида: audio1,1, audio2,2...и т.п.
Но как мне взять отсюда цифру и записать в переменную?
Заранее огромное спасибо! | |
|
|
|
|
|
|
|
для: SnooPI
(11.10.2008 в 18:32)
| |
$("div[id^='audio']").click(function{
alert($(this).attr('id').substring(5));
})
|
селекторы jquery | |
|
|
|
|
|
|
|
для: AlexSol
(11.10.2008 в 19:19)
| | Увы ничего не происходит... | |
|
|
|
|
|
|
|
для: SnooPI
(11.10.2008 в 19:44)
| | скобки забыл
$("div[id^='audio']").click(function(){
alert($(this).attr('id').substring(5));
})
|
| |
|
|
|
|
|
|
|
для: AlexSol
(11.10.2008 в 19:57)
| | Этот код исполняется до появления моих блоков видимо..
Исправил вот так:
$(function()
{
$("div[id^='audio']").click(function()
{
alert(this.id);
})
});
|
Но это исправились только от 1 ошибки( | |
|
|
|
|
|
|
|
для: SnooPI
(11.10.2008 в 20:00)
| | никакаких ошибок
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Untitled Document</title>
</head>
<body>
<div class="music" id="audio1">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(1);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more1">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
<div class="music" id="audio2">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(2);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more2">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
<div class="music" id="audio3">
<div class="icon"></div>
<div class="songname">Title</div>
<div class="time">5:00</div>
<div class="lyrics">
<a href="#" onclick="more(3);">
<img src="./images/lyrics.gif" alt="Информация"/>
</a>
</div>
<div class="load"><img src="./images/load.gif" alt="Скачать"/></div>
<div class="clear"></div>
<div id="more3">
<div class="lyricsempty"></div>
<div class="info">
<div class="lyricsmessage">Lyrics</div>
</div>
<div class="size">5.76 mb</div>
<div class="clear"></div>
</div>
</div>
<div id="test">
без 'аудио'
</div>
<style>
div{
border:1px solid silver;
}
.icon{
height:8px;
background:red;
}
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("div[id^='audio']").click(function(){
alert($(this).attr('id').substring(5));
})
});
</script>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: SnooPI
(11.10.2008 в 18:32)
| | Вроде все
$(function()
{
$("div[id^='audio']").click(function()
{
var aid = this.id;
var patt = (/audio(\d+)/.exec(aid));
alert(RegExp.$1);
})
});
|
| |
|
|
|