原因不明!?急にjavascriptで要素に値がセットできなくなった時の対処法

原因不明!?急にjavascriptで要素に値がセットできなくなった時の対処法

いつから?久しぶりにフォームの確認したら自動化したはずの値が入ってないじゃん!
ということで、プログラムのバグ解決記事を書きたいと思います。

バグの内容

なぜか急にinputタグのvalue値にjavascriptで取得したデータをセットしようとすると、一瞬入力されるように見えるもののすぐに消えてしまう現象が発生。

バグが発生するソース

var title = 'タイトル';
// javascriptで値をセットする場合
document.getElementById("your-program").value = title;
// jQueryで値をセットする場合
$('#your-program').val(title);
inputタグの値が入らなかった時

上記のプログラムを書いて実装すると何もセットされていない。

解決方法

var title = 'タイトル';
// javascriptで解決
document.getElementById("your-program").defaultValue = title;
// jQueryでは解決しなかった、、、
inputタグに値が入った時

要素のdefaultValueに対して値をセットすると表示されるようになりました。
jQueryでは解決
これで無事に入りました。なぜこのような現象が起こったのかは未だわかっていません。

とにかく解決できたので記事で残しておきます。

では。