新規投稿
フォローする

詳細画面のリンクをURLではなく、テキストで表示したい

リンク属性のフィールドのWebサイトアドレスは、通常URLで表示されますが、

この表示部分を他の文字列フィールドで保持している値で表示し、

その文字列をクリックするとリンクのサイトに遷移するようにしたいです。

下記の方法だと、console.logではURLが指定したテキストに書き換わっていますが、画面上では反映されません。

実現可能な方法がございましたら、ご教示いただけますと幸いです。

(function(){
  kintone.events.on('app.record.detail.show', function(event) {


    //表示名となる値の取得
    var dispName = event["record"]["FileName"]["value"];
    //リンクフィールドの表示部分のテキストを取得
    var dispURL = kintone.app.record.getFieldElement('URL').innerHTML;
    dispURL = dispName;


  });

})();

0

2件のコメント

Avatar
FM

上記ですと、dispURLにinnerHTMLの値が入っているだけになります。
また、kintone.app.record.getFieldElement('URL')はa要素の2個上の要素を取得しているので、下記の様にする必要があります。

var dispURL = kintone.app.record.getFieldElement('URL');
dispURL.childNodes[0].childNodes[0].innerText = dispName;

// childNodesを使用しない場合(非推奨、こちらは試してないです)
var dispURL = kintone.app.record.getFieldElement('URL');
var URLValue = event["record"]["URL"]["value"];
dispURL.innerHtml = '<span class="control-value-content-gaia"><a href="' + URLValue + '">' + dispName + '</a></span>';
FMにより編集されました
0
Avatar
y_k

FM様

ご回答頂きましてありがとうございます!

ご教示いただいた前者の方法で実装することができました。

大変助かりました…!

0
ログインしてコメントを残してください。