すべての要素「checkbox」がオフになっているときに、ラジオ ボタン (「no_subscribe」) を true に設定する必要があります。これは、これらのチェックボックスをすべてオフにした後に発生するはずです。これが他の場所で尋ねられた場合はご容赦ください。私はJavaScriptとプログラミング全般に不慣れなので、どんな助けでも大歓迎です! 「サブスクライブ」ボタンを希望どおりに動作させることができましたが、反対のシナリオがわかりません。これらは「メーラー」と呼ばれるフォーム内にあります。最近、行った試行を削除しました。それらは機能していませんでした。トラブルシューティングするコードがなくて申し訳ありません。
<fieldset>
Subscribe to our Mailing List?
<input type = "radio" name = "yes" id = "subscribe" onclick = "subscribe_to_all();" value = "yes" />Yes
<input type = "radio" name = "no" id = "no_subscribe" onclick = "subscribe_to_none();" value = "no" />No
</fieldset>
<fieldset name = "subscribe">
<legend>Mailing List Subscriptions</legend>
<input type="checkbox" id = "c1" name="subscriptions" onclick = "radio_yes();" value="CorporateEmails"/>
Corporate Press Release Emails<br />
<input type="checkbox" id = "c2" name="subscriptions" onclick = "radio_yes();" value="SoftwareAdvertising"/>
Upgrade Software Advertising List<br />
<input type="checkbox" id = "c3" name="subscriptions" onclick = "radio_yes();" value="PostBuyoutSpammers"/>
List given to spammers after buyout<br />
<input type="checkbox" id = "c4" name="subscriptions" onclick = "radio_yes();" value="NonCynical"/>
The only non-cynical list<br />
<input type="checkbox" id = "c5" name="subscriptions" onclick = "radio_yes();" value="SelltoSpammers"/>
List to sell to spammers<br />
<input type="checkbox" id = "c6" name="subscriptions" onclick = "radio_yes();" value="SpamList"/>
Spam List<br />
外部 JavaScript ファイル:
function subscribe_to_all() {
for (i = 0; i < document.mailer.subscriptions.length; i++) {
document.mailer.subscriptions[i].checked = true;
}
}
function subscribe_to_none() {
for (i = 0; i < document.mailer.subscriptions.length; i++) {
document.mailer.subscriptions[i].checked = false;
}
}
function radio_yes() {
document.getElementById("subscribe").checked = true;
}