スペースフィールドへのinnerHTML

innerHTMLで書いたものが消えなくて困ってます。

何がおかしいのか教えてください。

■構造

ラジオボタンがON/OFFとあり、ONの時はtext_1に文字が現れ

OFFの時にはtext1に文字が現れる。つまりラジオボタンによる表示の制御を行いたい。

■事象

ON/OFFを繰り返し行うと増殖(これはチュートリアルにのっていたやつですよね)

そして、ON⇔OFF時に相互に書いた文字が1度表示されると消えない

■サンプル(if文で分岐させています。setfieldshownは正常に動いているためif分は正常に動いています)

>>ON時

        var text1 = document.createElement(‘text1’);

        var text_1 = document.createElement(‘text_1’);

            text1.innerHTML = ‘’;

            text_1.innerHTML = ‘あ’;

            kintone.app.record.getSpaceElement(‘text1’).appendChild(text1);

            kintone.app.record.getSpaceElement(‘text_1’).appendChild(text_1);

>>OFF時

        var text1 = document.createElement(‘text1’);

        var text_1 = document.createElement(‘text_1’);

            text1.innerHTML = ‘い’;

            text_1.innerHTML = ‘’;

            kintone.app.record.getSpaceElement(‘text1’).appendChild(text1);

            kintone.app.record.getSpaceElement(‘text_1’).appendChild(text_1);

 

恐れ入りますがご助言くださいます様お願い致します。

An.Ag さん
cstapの瀧ヶ平です

要素を追加する際、各スペース要素の中身を消さずに新しく作成した要素を追加しているのが原因かと思います。

単純に要素の中身を消すだけなら

kintone.app.record.getSpaceElement('text1').innerHTML = "";

とすれば削除できます。

cstap 瀧ヶ平さん

 

ありがとうございます!

まさにこれがやりたかったんです!

とても助かりました!

ありがとうございました!