2012-04-13 4 views
1

Я хочу прочитать значение элемента List и записать его в span.
Так что списки выглядит следующим образом:JQuery Что я делаю неправильно?

  • мой первый пункт (1)
  • другой элемент (2)
  • следующий пункт (3)

  • мой первый пункт (а)
  • еще один пункт (б)
  • следующий пункт (с)

Но я не нашел ошибку:

<div id="Listgroup"> 
    <ul id="list1"> 
     <li><a href="" value="1">my first item<span></span></a></li> 
     <li><a href="" value="2">another item<span></span></a></li> 
     <li><a href="" value="3">next item<span></span></a></li> 
    </ul> 
<br> 
    <ul id="list2"> 
     <li><a href="" value="a">my first item<span></span></a></li> 
     <li><a href="" value="b">another item<span></span></a></li> 
     <li><a href="" value="c">next item<span></span></a></li> 
    </ul> 
</div> 

<script> 
$(function(){ 
$("li a").each(function(idx, item){ 
    $("span", "li a[value|=' + $(this).attr('value') + ']") 
     .html(" (" + $(this).attr('value') + ")"); 
}); 
}); 
</script> 

пожалуйста, помогите

Спасибо

+0

Какое сообщение об ошибке вы получаете? –

+0

[tag: list] * конкретно * говорит в своем описании, что это НЕ для HTML-списков. –

ответ

4

Ваши кавычки не совпадают строки в кавычки, так что его причислять ' + $(this).attr('value') + ' в виде строки, а не $(this).attr('value') как объект

$("span", "li a[value|=" + $(this).attr('value') + "]") 

Кроме того, вам не нужно, чтобы найти значение, как это. Вы уже знаете, что такое this, поэтому вы можете просто findspan оттуда.

Кроме того, элемент привязки не имеет атрибута value, что делает этот HTML недопустимым. Вы должны изменить его на data-value, которые сделали бы его в соответствие с HTML5:

$(function(){ 
$("li a").each(function(idx, item){   
    $(this).find("span").html(" (" + $(this).data("value") + ") ");  
}); 
}); 

-- SEE DEMO --

+0

Привет, Курт, спасибо за этот быстрый ответ. – Newbie

+0

Привет Новичок, добро пожаловать в StackOverflow. Если ответ Курта помог вам, пожалуйста, будьте добрыми и отметьте его ответ как «правильный» ответ с помощью крючка. Благодарю. –

+1

@ jfriend00 Используются ли 'this.value' и' .val() 'для элементов привязки? – Curt

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