FBでのplaceholderについて

お世話になっております。

下記の通り、フォームブリッジにてJSカスタマイズを用いて、該当項目にplaceholderを設定しているのですが、上手く実行されません。

(function() {
“use strict”;

fb.events.form.created = [function (state) {
  console.log (“OK”);
  var elInputElments = document.getElementsByClassName(“el-input”);
  for (i=0; i < elInputElments.length; i++){
    var target = elInputElments[i];
    console.log(target.getAttribute(“title”) );
    if(target.getAttribute(“title”) === “企業名”){
      var targetChildren = target.childNodes;
      targetChildren[2].setAttribute(“placeholder”, “株式会社●●”);
      console.log(targetChildren[2]);
      }
    }
  }];
})();

 

ブラウザのコンソールからは下記部分が適切に動くことは確認できております。

var elInputElments = document.getElementsByClassName(“el-input”);
  for (i=0; i < elInputElments.length; i++){
    var target = elInputElments[i];
    console.log(target.getAttribute(“title”) );
    if(target.getAttribute(“title”) === “企業名”){
      var targetChildren = target.childNodes;
      targetChildren[2].setAttribute(“placeholder”, “株式会社●●”);
      console.log(targetChildren[2]);
      }

 

fb.events.form.createdの使い方などで間違いをしてしまっているのでしょうか。

Yujiro Shin様

お世話になっております。
cstapの江田です。

DOM操作を行う場合はDOM作成後イベントである「fb.events.form.mounted」を用いるとよいと思います。
また、strictモードなので、for文のiはvar等を用いて宣言する必要があります。

(function() {
"use strict";
fb.events.form.mounted = [function (state) {
var elInputElments = document.getElementsByClassName("el-input");
for(var i=0; i < elInputElments.length; i++){
var target = elInputElments[i];
if(target.getAttribute("title") === "企業名"){
var targetChildren = target.childNodes;
targetChildren[2].setAttribute("placeholder", "株式会社●●");
}
}
}];
})();

江田様

お世話になっております。
上記ありがとうございます!

上手く実装できました!

非常にたすかりました!

引き続きなにか困ったことがあった際にはご相談させていただきますが、
よろしくお願いいたします。

江田様

 

お世話になっております。

placeholderについて、以前ご教示いただいた上記にのっとり、
下記のように書いていて動いておりました。(下記一部抜粋)

‘’’

(function() {
“use strict”;

fb.events.form.mounted = [function (state) {
console.log (‘test’);
var elInputElments = document.getElementsByClassName(“el-input”);
console.log (elInputElments);
for (var i = 0; i < elInputElments.length; i++){
var target = elInputElments[i];
console.log (target);
var targetChildren = target.childNodes;
switch (target.getAttribute(“title”)) {
case ‘企業名’:
targetChildren[2].setAttribute(‘placeholder’, ‘株式会社NP’);
break;
case ‘企業名カナ(全角カナ)’:
targetChildren[2].setAttribute(‘placeholder’, ‘カブシキガイシャエヌピー’);
break;
}
}
return state;
}];
})();

‘’’

ただ、昨日あたりから上手く動かなくなってしまったのですが、

フォームブリッジ側のバージョンアップなどが関連しておりますでしょうか。

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