ホームページ > ウェブフロントエンド > jsチュートリアル > HTML 用の JavaScript でアンパサンドを適切にエンコードするにはどうすればよいですか?

HTML 用の JavaScript でアンパサンドを適切にエンコードするにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-20 17:09:16
オリジナル
976 人が閲覧しました

How to Properly Encode Ampersands in JavaScript for HTML?

JavaScript でのアンパサンドのエンコード

非表示の入力フィールドから値を取得するときに HTML エンコードが失われるという問題が発生します。入力フィールド内でエンコードされた値が、適切なエンコードなしでテキストボックスに表示されます。これにより、「&」文字が HTML エンティティとしてではなく文字通りに解釈されます。

この問題を解決するには、JavaScript ライブラリまたは jQuery メソッドを使用して文字列をエンコードできます。

DOMParser API

  • 新しい DOMParser を作成する
  • parseFromString メソッドを使用して HTML 文字列を解析し、新しい Document オブジェクトを作成します。
  • 作成されたドキュメントの内部テキストを取得します。これは HTML エンコードされます。
const parser = new DOMParser();
const encodedText = parser.parseFromString('<p>chalk &amp; cheese</p>', 'text/html').documentElement.textContent;
ログイン後にコピー

カスタム JavaScript関数

function htmlEncode(value) {
  // Create a temporary textarea element
  const textarea = document.createElement('textarea');
  textarea.textContent = value;
  const encodedValue = textarea.value;

  // Remove the created textarea element
  textarea.remove();

  return encodedValue;
}
ログイン後にコピー

使用例

const hiddenValue = $('#hiddenId').attr('value');
const encodedValue = htmlEncode(hiddenValue);
$('#textboxId').val(encodedValue);
ログイン後にコピー

以上がHTML 用の JavaScript でアンパサンドを適切にエンコードするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート