■
<input type='reset' />
で作られるリセットボタンはフォーム内のinputタグやselectタグの値をvalueに戻してくれる。
valueに入ってる値を無視して、とりあえず空にして欲しかったので、関数を書いた。
/** * 指定したフォームの入力を空の設定する * * @method resetFormValues * @param string formName フォームのname属性 */ function resetFormValues(formName){ var form = document.forms[formName]; var length = form.length; for(var i=0; i<length; ++i){ switch(form[i].nodeName.toLowerCase()){ case 'input': clearHtmlInput(form[i]); break; case 'select': form[i].selectedIndex = 0; break; } } /** * inputタグ用の処理 */ function clearHtmlInput(input){ switch(input.type){ case '': case 'text': case 'file': case 'password': input.value = ''; break; case 'checkbox': case 'radio': input.checked = false; break; } } };
まだ対応ができてないパターンがあるかもしれない。ってか眠い。