質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

checkbox

checkboxは、GUIのエレメントです。また、HTML<input>タグのtype属性で扱われる値を指します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

3681閲覧

【MW WP FORM】チェックボックスのchildren属性のテキストを装飾したい

退会済みユーザー

退会済みユーザー

総合スコア0

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

checkbox

checkboxは、GUIのエレメントです。また、HTML<input>タグのtype属性で扱われる値を指します。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/11/03 03:55

編集2021/11/03 03:58

やりたいこと
添付画像①
イメージ説明

このように「個人情報の取り扱い」の部分にaタグでリンクを貼りたいです。
HTMLだと簡単なのですが、MW WP FORMから出力されるタグにはフォーマットが決まっている
ようで該当部分にリンクを貼ることができません。
画像の黄色い枠で囲まれている横に同じ「個人情報の取り扱いについて同意します」という文言がありますが、ここがMW WP FORMから出力されたHTMLになります。

MW WP FORMの該当部分のコード
children属性の「個人情報の取り扱いについて同意します」の部分になります。

<div class="FormItem"> <div class="FormTitle"> <div class="FormRequired">必須</div> <p>個人情報取扱について</p> </div> <div class="CheckBoxWrapper"> [mwform_checkbox name="download-personalcheckbox" class="FormInputCheckBox" children="個人情報の取扱について同意します" separator=","] </div> </div> コード

実際に検証上で出力されるコード
この中のmwform-checkbox-field-textというクラスの中にaタグを付与できないかというないようです。

<span class="mwform-checkbox-field horizontal-item"> <label> <input type="checkbox" name="download-personalcheckbox[data][]" value="個人情報の取扱について同意します" class="FormInputCheckBox"> <span class="mwform-checkbox-field-text">個人情報の取扱について同意します</span> </label> </span> コード

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

プラグインのデフォルト機能では難しそうですね。
JavaScriptの使用に抵抗がないようでしたら、強引ですが下記でいかがでしょうか。
プラグインの仕様変更があった場合にどうしようもないのですが...

他のチェックボックスへの影響を避けるため項目設置時にidを付与した例です。(下記ではtarget)
classのみときはユニークな命名にして配列で取得します。

idはinput要素に付与されますが、変更したいテキストは隣接するspan要素に含まれます。このためnextElementSiblingで隣接要素を取得しています。
ifを挟んでいるのは送信後のロード時に要素が消えるので、エラー対策です。

JavaScript

1window.addEventListener('load', function() { 2 const str = document.getElementById('target'); 3 if( str ) { 4 const targetStr = str.nextElementSibling; 5 targetStr.innerHTML = '<a href="" target="_blank" rel="noopener noreferrer">個人情報の取扱について</a>同意します'; 6 } 7});

投稿2021/11/12 08:56

sasa_

総合スコア140

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/11/16 07:03 編集

非常にわかりやすい回答ありがとうございます!無事実装できました。 やはりjsで無理やり変えるしかないんですね、とても勉強になりました。 プラグインの仕様が変わることも想定して、デザイナーとも相談したいと思います。 ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問