6

method='get' を指定して HTML フォームを送信すると、フォームからの値が次のような GET リクエストにフォーマットされます。

www.site.com/script.php?var1=value&var2=value&...

私が知る限り、フォーム上の項目のいずれかが指定されていない場合でも、それらは文字列に入れられます。上記の例の var1 が指定されていない場合、次のように表示されます...

www.site.com/script.php?var1=&var2=value&...

フォームに GET リクエストに未指定の値が含まれないようにする方法はありますか (できれば JavaScript を使用しないでください)。

4

1 に答える 1

2

その必要はありません。送信された変数は PHP で簡単に処理できます。しかし、本当にそうしたい場合は、jQuery を使用できます。

とにかく、次のようなことができます:

<form action="index.html" method="get">
    <input name="name">
    <input name="name2">
    <input name="name3">
    <input type="submit">
</form>
<script type="text/javascript">
    $("form").submit(function() {
        $("form input").each(function(index, element) {
            if(($(this).val()=="")){ $(this).attr("disabled","disabled"); }
        });
    });
</script>

ただし、これは良い習慣ではないことを忘れないでください。

于 2012-04-23T04:00:20.537 に答える