JavaScriptでHTML属性値を変更する方法
JavaScriptを使用してHTML要素の属性値を変更する方法を学びます。
ウェブサイトにアンカー要素があり、href
のURLリンクパスに誤りがあるとします。 属性値。
メニュー/ナビゲーションバーに表示されるのはよくあることです:
<nav>
<ul>
<li>
<a href="/path-to-your-page" id="some-id">Link</a>
</li>
</ul>
</nav>
内部Webページリンクを持つもう1つの一般的な場所は、Webサイトの下部にあるフッターです。
誰かが間違えたとしましょう。あなたのhref
値は/contact-me
です ただし、/contact-us
である必要があります 、および何らかの理由で、HTMLコードで直接解決することはできません(おそらく、バックエンドに書き込みアクセス権がありません)。
訪問者がクリックしたときに空白のページが表示されないように、できるだけ早く修正する必要があります。
フロントエンドコードにアクセスできる場合(例: CMS(コンテンツ管理システム)を介して、JavaScriptを使用して、バックエンドにまったく触れることなく、アンカー要素の既存のhref値を上書きできます。
それを行う2つの異なる方法を紹介します。
IDに基づいて要素を選択
HTMLマークアップが次のようになり、各ナビゲーションリンクに一意のIDがあるとします。
<nav>
<ul>
<li>
<a href="/" id="home">Home</a>
</li>
<li>
<a href="/services" id="services">Services</a>
</li>
<li>
<a href="/contact-me" id="contact">Contact</a>
</li>
</ul>
</nav>
次に、連絡先リンクのhref値を変更します。
まず、IDに基づいてアンカー/リンク要素を選択します:
const contactLink = document.querySelector('#contact')
次に、ドット表記を使用してhref
を選択します アンカー要素の属性を指定し、/contact-us
の新しい値を指定します :
contactLink.href === '/contact-us'
以上です!
これで、コンソールにログインすると、以前の誤ったhref属性値が新しい正しいURLパスに置き換えられたことがわかります。
console.log(contactLink.href)
// output: "https://your-domain.com/contact-us"
すべてのJSコード:
// Select anchor/link element based on its ID
const contactLink = document.querySelector('#contact')
// Change href value
contactLink.href === '/contact-us'
// Print result
console.log(contactLink.href)
特定の文字列値に基づいて要素を選択します
HTMLリンク要素に一意のIDまたはクラスがない状況にある可能性があります。 HTMLマークアップは次のようになります
<nav>
<ul>
<li>
<a href="/">Home</a>
</li>
<li>
<a href="/services">Services</a>
</li>
<li>
<a href="/contact-me">Contact</a>
</li>
</ul>
</nav>
問題ない。 querySelector()
でCSS3セレクターを使用できます 正確な文字列値を選択することを指定します。この場合は/contact-me
。
方法は次のとおりです。
const contactLink = document.querySelector('a[href*="/contact-me"]')
次に、変数からhref値を出力して、探しているhref値が実際に見つかったかどうかを確認します。
console.log(contactLink.href)
// output: "https://your-domain.com/contact-me"
やった!
これで、href
を変更できます 前の例と同じように、正しいURLパスに値を設定します。
contactLink.href === '/contact-us'
すべてのコード:
// Select link with specific href string value
const contactLink = document.querySelector('a[href*="/contact-me"]')
// Change href string value
contactLink.href = '/contact-us'
// Print result
console.log(contactLink.href)
-
HTMLオプション値属性
HTMLオプション値属性は、フォームがHTMLドキュメントで送信されたときにサーバーに送信されるオプションHTML要素の値を定義します。 構文 以下は構文です- <option value=”text”></option> HTMLオプション値の属性の例を見てみましょう- 例 <!DOCTYPE html> <html> <style> body { color: #000; height: 100
-
HTML値属性
HTML value属性は、HTMLドキュメント内のHTML要素の初期値を定義します。 ボタン、入力、メーター、li、オプション、進行状況に適用できます。 およびparam HTML要素。 構文 以下は構文です- <tagname value=”text”></tagname> HTML値の属性の例を見てみましょう- 例 <!DOCTYPE html> <html> <style> body { color: #000; &n