aboutsummaryrefslogtreecommitdiff
path: root/files/ru/web/api/element/setattribute/index.html
blob: 6a16a07850c24d723995f6a1a75f211daa9edc81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
---
title: Element.setAttribute()
slug: Web/API/Element/setAttribute
translation_of: Web/API/Element/setAttribute
---
<div>{{APIRef("DOM")}}</div>

<div>Добавляет новый атрибут или изменяет значение существующего атрибута у выбранного элемента.</div>

<div></div>

<h2 id="Syntax">Синтаксис</h2>

<pre class="syntaxbox notranslate"><em>element</em>.setAttribute(<em>name</em>, <em>value</em>);
</pre>

<ul>
 <li><code>name</code> - имя атрибута (строка).</li>
 <li><code>value</code>  - значение атрибута.</li>
</ul>

<h2 id="Пример">Пример</h2>

<p>В следующем примере, <code>setAttribute()</code> используется, чтобы установить атрибут {{htmlattrxref("disabled")}}  кнопки {{htmlelement("button")}}, делая её отключённой.</p>

<pre class="brush: html notranslate">&lt;button&gt;Hello World&lt;/button&gt;</pre>

<pre class="brush:js notranslate">var b = document.querySelector("button");

b.setAttribute("disabled", "disabled");
</pre>

<p>{{ EmbedLiveSample('Пример', '300', '50', '', 'Web/API/Element/setAttribute') }}</p>

<h2 id="Notes">Примечания</h2>

<p>При вызове на элементе внутри HTML документа, setAttribute переведёт имя атрибута в нижний регистр.</p>

<p>Если указанный атрибут уже существует, его значение изменится на новое. Если атрибута ранее не существовало, он будет создан.</p>

<p>Несмотря на то, что метод  <code style="font-style: normal;"><a href="/ru/docs/DOM/element.getAttribute" title="DOM/element.getAttribute">getAttribute()</a></code> возвращает null у удалённых атрибутов, вы должны использовать <a href="/ru/docs/DOM/element.removeAttribute" style="font-family: Consolas, Monaco, 'Andale Mono', monospace;" title="DOM/element.removeAttribute">removeAttribute()</a> вместо <em>elt</em><span style="font-family: consolas,monaco,andale mono,monospace;">.setAttribute(</span><em>attr</em><span style="font-family: consolas,monaco,andale mono,monospace;">, null)</span>, чтобы удалить атрибут. Последний заставит значение <code>null</code> быть строкой <code>"null"</code>, <span class="short_text" id="result_box" lang="ru"><span>которая, вероятно,</span> <span>не то, что</span> <span>вы хотите</span><span>.</span></span></p>

<p>Использование setAttribute() для изменения определённых атрибутов особенно значимо в XUL, так как работает непоследовательно, а атрибут определяет значение по умолчанию. Для того, чтобы получить или изменить текущие значения, вы должны использовать свойства. Например, elt.value вместо elt.setAttribure('value', val).</p>

<p>Чтобы установить атрибут, которому значение не нужно, такой как, например, атрибут <code>autoplay</code> элемента {{HTMLElement("audio")}}, используйте null или пустое значение. Например: <code><em>elt</em>.setAttribute('autoplay', '')</code></p>

<div>{{DOMAttributeMethods}}</div>

<h2 id="Specification">Спецификация</h2>

<ul>
 <li><a class="external" href="http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-F68F082">DOM Level 2 Core: setAttribute</a> (представлено в <a class="external" href="http://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html#method-setAttribute">DOM Level 1 Core</a>)</li>
 <li><a class="external" href="http://www.whatwg.org/specs/web-apps/current-work/#apis-in-html-documents">HTML5: APIs in HTML documents</a></li>
</ul>