ラジオボタンのチェックをクリアしたい
公開日:2022/03/10
- クラウド
- V5.4
- V5.3
- V5.2
- V5.1
- V5.0
- V4.3
- V4.2
- V4.1
- V4.0
ラジオボタンは一度チェックを入れるとチェックをクリアできないのですが、
ラジオボタンのチェックをクリアする方法はありますか。
JavaScriptでの実装が必要とはなりますが、可能です。
ラジオボタンクリア用のオブジェクトをクリックすることで、ラジオボタンのチェックをクリアする処理を実装します。
※ラジオボタンクリア用のオブジェクトの設定については「ラジオボタンクリア用のオブジェクト」を確認ください。
実装する処理は、製品バージョンおよびフォーム形式によって異なります。
以下、ご利用の環境の内容をご確認ください。
・V5.2.0以降のバージョン&フォーム形式の場合
・V5.2.0より前のバージョン&フォーム形式の場合
・旧バージョン形式のフォーム(JSP)/JSPフォームの場合
◆V5.2.0以降のバージョン&フォーム形式の場合
例として、オブジェクト名 [IRADIO000] のラジオボタンのチェックをクリアする方法を説明します。
以下の処理を参考に、ラジオボタンクリア用のオブジェクトに実装してください。
【サンプル処理】
// APIをインスタンス化 var forms = new iftc.cwf.api.Forms();
// ラジオボタンオブジェクトの配列を取得
const formObject = forms.getFormObjectsByName("IRADIO000");
// 同名オブジェクトの数分、チェックをクリア
for(let i=0 ; i < formObject.length ; i++){
formObject[i].setChecked(false);
}
◆V5.2.0より前のバージョン&フォーム形式の場合
例として、オブジェクト名 [IRADIO000] のラジオボタンのチェックをクリアする方法を説明します。
以下の処理を参考に、ラジオボタンクリア用のオブジェクトに実装してください。
【サンプル処理】
// APIをインスタンス化
var forms = new iftc.cwf.api.Forms();
// ラジオボタンオブジェクトの配列を取得
var radio = document.getElementsByName('IRADIO000');
// 同名オブジェクトの数分、チェックをクリア
var len = radio.length;
for(var i=0 ; i < len ; i++){
radio[i].checked = false;
// チェックマーク種別が「グラフィカル」の場合に追記(※1) ここから--------
// APIをインスタンス化
var forms = new iftc.cwf.api.Forms();
// iftc.cwf.api.Forms.invokeEvent() を利用し入力フォームに反映
forms.invokeEvent(radio[i], "onChange");
forms.invokeEvent(radio[i], "onBlur");
// 追記ここまで-------------------------------------------------------------------
}
(※1)チェックマーク種別が「グラフィカル」に設定されたラジオボタンに対して、JavaScriptでchecked属性値を設定した場合、
値は設定されますが、入力フォーム上では変更が反映されず、チェックがクリアされません。
iftc.cwf.api.Forms.invokeEvent() を使用し、onChange、onBlur イベントを強制実行することで、入力フォーム上の表示が
反映されます。
◆旧バージョン形式のフォーム(JSP)/JSPフォームの場合
例としてオブジェクト名 [PRADIO000] のラジオボタンのチェックをクリアする方法を説明します。
以下の処理を参考に、ラジオボタンクリア用のオブジェクトに実装してください。
【サンプル処理】
// ラジオボタンオブジェクトの配列を取得
var radio = document.getElementsByName("PRADIO000");
// 同名オブジェクトの数分、チェックをクリア
var len = radio.length;
for(var i=0 ; i < len ; i++){
radio[i].checked = false;
}
◇ラジオボタンクリア用のオブジェクト
ラジオボタンクリア用のオブジェクトとして以下のような入力テキストを用意します。
配置した入力テキストをクリックすることでラジオボタンをクリアできます。
・入力テキストのプロパティ
アンケート
この質問・回答は役に立ちましたか?