チェックを通った時だけForwardさせる
JavaScriptを使って入力項目をSubmitさせるときに、あるチェックを入れて、チェックを通過した時だけSubmitさせたいとき。
function someoneSelected() { var selA = document.mainForm.conditionA.value; var selB = document.mainForm.conditionB.value; var selC = document.mainForm.conditionC.value; if( (""==selA) && (""==selB) && (""==selC) ) { alert("リストの選択がされていません。"); return false; } return true; }
上の例では、3つのセレクト項目のうち、どの項目も選択されていない時は、Falseを返す。どれかが選択されているときはtrueを返す。
<form name="mainForm" action="XXXAction"> <select name="conditionA"> <option value="" selected></option> <option value="aaaa">aaaa</option> <option value="bbbb">bbbb</option> <option value="cccc">cccc</option> </select> <select name="conditionB"> <option value="" selected></option> <option value="dddd">dddd</option> <option value="eeee">eeee</option> <option value="ffff">ffff</option> </select> <select name="conditionC"> <option value="" selected></option> <option value="gggg">gggg</option> <option value="hhhh">hhhh</option> <option value="iiii">iiii</option> </select> <input type="button" value="確 定" onclick="return someoneSelected()" /> </form>
onClick="return booleanを返す関数()" でScript関数がtrueを返す時だけformの内容をactionで指定した"XXXAction"にsubmitすることができる。