JavaScript で入力フィールドを読み取り専用にするにはどうすればいいですか? 質問する

JavaScript で入力フィールドを読み取り専用にするにはどうすればいいですか? 質問する

入力フィールドに追加できるのでreadonly="readonly"、編集できないことはわかっています。ただし、フォーム コードにアクセスできないため (マーケティング ソフトウェアによって生成される)、入力の ID をターゲットにして読み取り専用にするには、JavaScript を使用する必要があります。

データは送信時に収集される必要があるため、入力を無効にしたくありません。

ここに、私が以下の提案に追加したページがありますが、今のところうまくいきません。

https://www.pages05.net/engagedigital/inputReadOnly/test?spMailingID=6608614&spUserID=MTI5MDk4NjkzMTMS1&spJobID=Nzk4MTY3MDMS1&spReportId=Nzk4MTY3MDMS1

<body onload="onLoadBody();">今後これを使用する人は必ず使用してください。

ベストアンサー1

入力要素を取得し、そのreadOnlyプロパティをtrue次のように設定できます。

document.getElementById('InputFieldID').readOnly = true;

具体的には、次のようになります。

<script type="text/javascript">
  function onLoadBody() {
    document.getElementById('control_EMAIL').readOnly = true;
  } 
</script>

onLoadBody()次のように body タグでこの関数を呼び出します。

<body onload="onLoadBody">

デモを見る:jsfiddle

おすすめ記事