Настройка текста кнопки с помощью javascript
Я настраиваю кнопку через javascript, но кнопка не отображает текст.
Любые рекомендации по его устранению?
var b = document.createElement('button');
b.setAttribute('content', 'test content');
b.setAttribute('class', 'btn');
b.value = 'test value';
var wrapper = document.getElementById(divWrapper);
wrapper.appendChild(b);
Спасибо!
Ответы
Ответ 1
В основном используйте innerHTML вместо значения, потому что тип 'button', который вы добавляете, устанавливает его значение в innerHTML.
JS:
var b = document.createElement('button');
b.setAttribute('content', 'test content');
b.setAttribute('class', 'btn');
b.innerHTML = 'test value';
var wrapper = document.getElementById("divWrapper");
wrapper.appendChild(b);
Похоже, это в DOM:
<div id="divWrapper">
<button content="test content" class="btn">test value</button>
</div>
Демо: http://jsfiddle.net/CuXHm/
Ответ 2
Значение элемента button не является отображаемым текстом, вопреки тому, что происходит с элементами input
кнопки типа.
Вы можете сделать это:
b.appendChild(document.createTextNode('test value'));
Демонстрация
Ответ 3
Создайте текст node и добавьте его в элемент кнопки:
var t = document.createTextNode("test content");
b.appendChild(t);
Ответ 4
Задайте текст кнопки, установив innerHTML
var b = document.createElement('button');
b.setAttribute('content', 'test content');
b.setAttribute('class', 'btn');
b.innerHTML = 'test value';
var wrapper = document.getElementById('divWrapper');
wrapper.appendChild(b);
http://jsfiddle.net/jUVpE/