2015-09-06 3 views
1

Когда я использую следующее:Как установить атрибут с пустым значением?

myElement.setAttribute('data-title', title); 

где title пусто Я не получаю пустой атрибут. Я получаю атрибут без значения.

Есть ли способ получить пустой атрибут с помощью JavaScript или jQuery? Я спрашиваю, потому что, если я не могу, то код, который у меня есть, который ссылается на атрибут позже, станет сложным, чтобы иметь дело с возможностью того, чтобы не было никакой ценности.

+2

, что разница между пустым атрибутом и атрибутом без значения – sahbeewah

+1

@SteveC Что вы хотите сделать? –

+0

Проблема не в том, что я думал. Спасибо всем. Извините за то, что потратил ваше время. Я использовал attr(), чтобы вернуть атрибут, но на неправильном объекте. Это всегда что-то простое. – SteveC

ответ

1

SetAttribute является родным функция.

var myElement = document.getElementById("myId"); 

myElement.setAttribute('data-title', "") 

myElement.getAttribute('data-title'); // you get : "" 

myElement.getAttribute('data-test'); // you get : null 


if (myElement.getAttribute('data-title') !== "" && myElement.getAttribute('data-title') !== null) 
    console.log("not empty"); 

Если вы хотите использовать JQuery предпочитает, атр:

var $myElement = $("#myId"); 

$myElement.attr("data-title", ""); 

$myElement.attr("data-title"); // you get : "" 

$myElement.attr("data-test"); // you get : undefined 

if (myElement.getAttribute('data-title') !== "" && typeof(myElement.getAttribute('data-title')) !== "undefined") 
    console.log("not empty"); 
+0

Спасибо. Вы совершенно правы, но это не так, как мне казалось (см. Выше). – SteveC

1

Вы должны использовать атр

как:

myElement.attr('data-ttitle','') 

получить:

var data = myElement.attr('data-ttitle') 

ссылки here

+0

Извините. Я должен был упомянуть, что я это пробовал. Тот же результат. – SteveC

+0

вы получите пустую строку, если атрибут пуст или не определен, если атрибут отсутствует. @SteveC –

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