2014-01-30 2 views
-1

Как узнать имя div с javascript или JQuery?Как узнать атрибут имени div,

У меня есть код, который динамически создает divs с тем же именем и добавляет восходящее число, чтобы сделать div уникальным. ex:

Как я могу «прочитать» идентификатор div?

$(this).divname() 

или что-то ....

+0

, которую вы хотите Div ID или имя –

+0

I Предполагая, что вы имели в виду данный идентификатор; в этом случае это просто 'this.id'. –

ответ

3

Если this относится к элементу сНа тогда this.id даст значение ID, $(this).attr('name') должен дать значение атрибута имени

1

Для ID

$(this).attr('id'); 

Для Названия

$(this).attr('name'); 
0

Получить идентификатор для этого конкретных дел. Используйте attr и prop в jquery.

getId = $(this).attr('id'); 
getName = $(this).attr('name'); 

Примечание: JQuery 1.6, метод .attr() иногда принимал значения свойств во внимание при получении некоторых атрибутов, которые могут привести к непоследовательное поведение. Начиная с jQuery 1.6, метод .prop() предоставляет способ для явного получения значений свойств, в то время как .attr() извлекает атрибуты .

0

Используйте .attr(), чтобы получить значение атрибута для первого элемента в наборе согласованных элементов.

var id = $(this).attr('id'); 
0

существует различные способы зависят от ТРЕБОВАНИЙ

var variableName = $(this).attr('name'); 
var variableName = $(this).attr('id'); 
var variableName = $("#id").attr('find any attribute'); // name, id, class and so on 
var variableName = $("div#id").attr('find any attribute'); // name, id, class and so on 
var variableName = $(".class").attr('find any attribute'); // name, id, class and so on 
var variableName = $("div.class").attr('find any attribute'); // name, id, class and so on 
var variableName = $("div[id='test']").attr('find any attribute'); // name, id, class and so on 
var variableName = $("div[class='testing']").attr('find any attribute'); // name, id, class and so on 
var variableName = $("div[name='header']").attr('find any attribute'); // name, id, class and so on 

использовать любого из них, которые подходят по вашему требованию ... и this ключевым слова относится к текущему объекту.

Например, если я создаю функцию щелчка и непосредственно я Переадр CLASS как

$(".test").click(function(){ this.id /*OR*/ (this).id /*OR*/ $(this).attr("name") }); 

ИЛИ косвенно Переадр CLASS как

$("div[class='test']").click(function(){ this.id /*OR*/ (this).id /*OR*/ $(this).attr("name") }); 

Теперь click функция даст me текущий объект (ы) ids НО в селекторе, если я се this ключевое слово

$(this).click(function(){ this.id /*OR*/ (this).id /*OR*/ $(this).attr("any attribute name") }); 

теперь, где я когда-либо нажмите на документ в любом месте она будет давать мне ID и где некоторые дают мне неопределенную ИЛИ также ошибки, так это зависит от выбора.

Например теперь вы множественное ДИВ, пролет ИЛИ любой объект с таким же классом, но с разными идентификаторами, когда вы нажимаете на любом DIV ИЛИ поверочного это даст текущий идентификатор из-за this.id так this относитесь к текущему объекту ,

Так большую часть времени мы используем прямой seletor, чтобы получить какой-либо атрибут, как этот

$("#test").attr("name"); 
+0

Хм ... интересное использование 'var' здесь ... действительно! – Jai

+0

моя ошибка Я пропустил имя переменной !!! – user2727841

0

Если $(this) относится к DIV вы говорите, то

$(this).attr('id') 

возвращает либо Div id или undefined,

$(this).attr('name') 

возвращает имя div или undefined.

0

Вот общая функция, которая возвращает имя Div, если вы передаете идентификатор к нему:

function returnName(id){ 
    var name = $('#'+id).attr('name'); 
    return name; 
} 

Чтобы использовать эту функцию:

var currentDivId = $(this).attr('id'); 
var myDivName = returnName(currentDivId); 
Смежные вопросы