Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Проблема с id и class-ом в js (https://javascript.ru/forum/dom-window/30899-problema-s-id-i-class-om-v-js.html)

fAmOus 19.08.2012 22:14

Проблема с id и class-ом в js
 
Всем привет..

/* Вывод названия вместо № группы */
var gGroupID=$('#usergroupid').html();
$('.uGroupIn').append('<span id=colonline>'+gGroupID+'</span>');
if(gGroupID=='4'){$('#colonline').html('Администратор');}
if(gGroupID=='3'){$('#colonline').html('Модератор');}
if(gGroupID=='2'){$('#colonline').html('Проверенный');}
if(gGroupID=='1'){$('#colonline').html('Пользователь');}
if(gGroupID=='251'){$('#colonline').html('Файлмейкер');}
if(gGroupID=='255'){$('#colonline').html('Заблокированный');}
if(gGroupID=='0'){$('#colonline').html('Гость');}

/* Вывод ника */
var innerName=$('#username').html();
$('.userName').append(innerName);


Проблема заключается в том что не хочет работать с id=#, но когда я ставлю class='.' всё прекрасно работает..

Пытаюсь заменить .userName
$('.userName').append(innerName);

И .uGroupIn
$('.uGroupIn').append('<span id=colonline>'+gGroupID+'</span>');


Ну собственно вот куда пытаюсь вставить..
<a href="#" class="userName"></a>
<div class="uGroupIn"></div>

fAmOus 19.08.2012 22:20

Ну и та же проблема с #colonline

Deff 19.08.2012 22:21

fAmOus,
1. собственно есть разрешенные спецсимволы в стандартных атрибутах тегов, согласно спецификации W3C, # - недопустимый для id(внутри записи тега), поскольку он используется в стилях css
2.Атрибут id используемый через метод jQuery $("#id") - должен быть единственный и неповторимый на странице, в противном случае используется иная конструкция
$("div[id='Какое-то id']")

fAmOus 19.08.2012 22:23

Deff,
И как тогда писать?
То есть из id='' можно вывести информацию, но вставить нельзя?

Deff 19.08.2012 22:57

fAmOus,
Если элемент с данныv id единственный - делайте с ним что хотите
Элементов с одним и тем же классом - может быть много
Элемент же с id - для правильной работы jQuery метода $("#id") (Да и нативного метода document.getElementById('id') - должен быть единственный на данной странице
втавляйте классом '<span class=colonline>'+gGroupID+'</span>

Deff 19.08.2012 23:03

fAmOus,
Нарисуйте еще раз ваш html cписок и поясните , что нужно сделать
Или используйте сами метод перебора однотипных элементов each


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