検証のif/elseステートメントによっては、文字列の表示に問題があります。
以下のコードを見ると、if
ステートメントが満たされている場合は問題のないメッセージが表示されますが、ステートメントが満たされていることを確認してif
意図的にelse if
ステートメントを失敗させると、メッセージを表示する代わりに空白が表示されます。else if
以下のJavaScript検証でステートメントが満たされ たときにメッセージが表示されないのはなぜですか。
function editvalidation() {
var isDataValid = true;
var currentAssesO = document.getElementById("currentAssessment");
var noStudentsO = document.getElementById("addtextarea");
var studentAssesMsgO = document.getElementById("studentAlert");
studentAssesMsgO.innerHTML = "";
if (currentAssesO.value == ""){
$('#targetdiv').hide();
studentAssesMsgO.innerHTML = "Please Select an Assessment to edit from the Assessment Drop Down Menu";
isDataValid = false;
}else if (noStudentsO.value == ""){
$('#targetdiv').hide();
studentAssesMsgO.innerHTML = "You have not Selected any Students you wish to Add into Assessment";
isDataValid = false;
}
else{
studentAssesMsgO.innerHTML = "";
}
return isDataValid;
}
アップデート:
HTML:
SELECT BOX(オプションはこのボックスに追加されます):
<select multiple="multiple" name="addtextarea" id="studentadd" size="10">
</select>
ドロップダウンメニュー:
<select name="session" id="sessionsDrop">
<option value="">Please Select</option>
<option value='20'>EWYGC - 10-01-2013 - 09:00</option>
<option value='22'>WDFRK - 11-01-2013 - 10:05</option>
<option value='23'>XJJVS - 12-01-2013 - 10:00</option>
</select> </p>
アラートメッセージ:
<div id='studentAlert'></div>
検証のための要件:
ドロップダウンメニューが空の場合は、アラートメッセージdivのドロップダウンメニューから評価を選択する必要があるというメッセージを表示します。
ドロップダウンメニューが空でない場合は、選択ボックスにオプションが含まれているかどうかを確認し、選択ボックスにオプションが含まれていない場合は、評価に追加する学生が選択されていないことを示すdivアラートメッセージを置き換えます
ドロップダウンメニューが空でなく、選択ボックスが空でない場合(つまり、オプションが含まれている場合)、divアラートメッセージは単なる空の文字列です。
""