0

単純な JavaScript 検証が機能しない理由。デフォルトのテキストがデフォルト値 (キーワード) と同じかどうかを確認し、空のパラメーターでフォームを送信します。

<form method="get" id="search_form" action="http://somesampleurl.com" onsubmit="return validation();">
<input name="s_rawwords" value="Keyword(s)" id="search_field" class="search_field" type="text">
<input name="s_freeloc" value="City, State or Zip" id="search_field2" class="search_field" type="text">
<input value="" id="search_button" type="submit">
</form>
<script type="text/javascript">
    function validation(){
        var search_key = document.getElementById("search_field").value
        alert(search_key);
        if(search_key =="Keyword(s)"){
            alert("step2");
            search_key = "";
        }
    }
</script>
4

2 に答える 2

3

trueあなたの関数は決してorを返さfalseないので、何も検証しません。false入力が無効で、フォームを送信したくない場合に戻ります。

こちらのMSDNドキュメントをご覧ください

于 2013-05-31T18:59:04.710 に答える
1

このコードを試してください:

function validation(){
    var search_key = document.getElementById("search_field").value;
    alert(search_key);
    if(search_key =="Keyword(s)"){
        alert("step2");
        document.getElementById("search_field").value = "";
    }
    return true;
}
于 2013-05-31T19:00:18.040 に答える