jquery и attr, неопределенный - PullRequest
       0

jquery и attr, неопределенный

1 голос
/ 16 октября 2010


Что не так с моим кодом? Почему .atrr() отображается пустым?
Спасибо

$(document).ready(function(){
   $('#push').click(function(){
      alert($('#push2').attr('href').val);
   }); 
});  

HTML:

<div id="push">PUSH</div>
<a id="push2" href="http://www.google.com">PUSH Google</a>

Ответы [ 6 ]

8 голосов
/ 16 октября 2010

.attr() уже возвращает строку, поэтому просто используйте ее напрямую (без .val):

$(document).ready(function(){
    $('#push').click(function(){
        alert($('#push2').attr('href'));
    }); 
}); 

Вы можете проверить это здесь . Причина, по которой вы видите undefined в настоящее время, заключается в том, что свойство .val строки object равно undefined:)

2 голосов
/ 16 октября 2010

Я думаю, вам не нужно .val после $('#push2').attr('href').attr функция уже возвращает строку.

1 голос
/ 16 октября 2010
$('#push2').attr('href')
0 голосов
/ 16 октября 2010

Вы используете один и тот же идентификатор для div и для привязки. Идентификаторы должны быть уникальными. Jquery извлекает первый элемент, который является div, и да, у div нет href Просто используйте $ ('# push2'). Attr ('href');

0 голосов
/ 16 октября 2010

Попробуйте:

alert($('#push2').attr('href').text());
0 голосов
/ 16 октября 2010

Я не уверен, что вам нужен .val после attr. функционировать? Попробуйте и посмотрите, что вы получите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...