この検証を機能させるのに問題があります。選択ボックスが選択されており、フォーム内のデフォルトオプションが残っていないことを確認しています。
形:
<label for="reason">How can we help?</label>
<select name="reas">
<option value="Please Select">Please Select</option>
<option value="Web Design">Web Design</option>
<option value="branding">Branding</option>
<option value="rwd">Responsive Web Design</option><span id="dropdown_error"></span>
</select>
オンクリックイベント:
$(document).ready(function(){
$('#contactForm').submit(function(){
return checkSelect();
});
});
働き:
function checkSelect() {
var chosen = "";
var len = document.conform.reas.length;
var i;
for (i = 0; i < len; i++){
if (document.conform.reas[i].selected){
chosen = document.conform.reas[i].value;
}
}
if (chosen == "Please Select") {
document.getElementById("dropdown_error").innerHTML = "No Option Chosen";
return false;
}
else{
document.getElementById("dropdown_error").innerHTML = "";
return true;
}
}
コンソールでも次のエラーが発生します。
Uncaught TypeError: Cannot set property 'innerHTML' of null
私はJavaScriptを初めて使用するので、現時点でいくつかの簡単な例を学習して試していますが、これが検証されない原因がわかりません。
助けていただければ幸いです