下記コードを解読しようと試みてるんですが、特にif (up.checked == true || de.checked == true)の箇所
が理解できません
ブラウザ表示してラジオボタンのps・up・deを選択し、psとupだったら条件以外の場合ERROR1~4を表示、upとdeを選択中chkid[](チェックボックス)をチェックしなかったらERROR5を表示という動作を追加したいんです
今のコードだと一応動作は出来るけど、チェックボックスにチェックをいれてもERROR5が表示されてしまうため今ここで何が処理されてるのか確認したいんです
if (up.checked == true || de.checked == true)の条件文の中で行っている処理で、chkid[]が未チェックだとアラート表示になると思ったらチェックを入れた状態でもアラート表示になってしまうのはなぜでしょうか
console.logでどのような処理をしているのかも、()内のオブジェクトを表示するという事しか調べられませんでした
解説していただけませんか
JavaScript
1 function condition() { 2 var ps = document.getElementById("r1"); 3 var up = document.getElementById("r2"); 4 var de = document.getElementById("r3"); 5 if (ps.checked == true || up.checked == true) { 6 if (document.getElementById('name').value.length >= 10) { 7 window.alert("ERROR1"); 8 return false; 9 } else if (document.getElementById('name').value.length == "") { 10 window.alert("ERROR2"); 11 return false; 12 } else if (document.getElementById('comment').value.length >= 300) { 13 window.alert("ERROR3"); 14 return false; 15 } else if (document.getElementById('comment').value.length == "") { 16 window.alert("ERROR4"); 17 return false; 18 } 19 } 20 if (up.checked == true || de.checked == true) { 21 cde = document.getElementsByName('chkid[]'); 22 var v = 0; 23 for(var bde = 0; bde < cde.length; bde++) { 24 console.log(cde[bde]); 25 console.log(bde); 26 cde[bde].disabled = false; 27 } 28 if (v == 0) { 29 window.alert ("ERROR5"); 30 } 31 } 32 }
回答4件
あなたの回答
tips
プレビュー