アプリ版:「スタンプのみでお礼する」機能のリリースについて

フォームからGETで複数のパラメータを送信するとき、値が空文字のものを表示しないようにすることは可能でしょうか。

たとえば、次のようなフォームを含むform.phpがあるとします。
--------------
<form action="./result.php" method="get">
<input type="text" name="id" size="40">
<input type="text" name="name" size="40">
<input type="text" name="address" size="40">
<input type="text" name="sex" size="40">
<input type="submit" value="送信"><input type="reset" value="リセット">
</form>
--------------

このフォームから、
--------------
id:13
name:佐藤太郎
address:東京都新宿区適当1-2-3
sex:男性
--------------
というデータを送信した場合、送信ボタンを押すと

./result.php?id=13&name=佐藤太郎&address=東京都新宿区適当1-2-3&sex=男性

のページに遷移しますが、
--------------
id:
name:佐藤太郎
address:
sex:男性
--------------
ですと

./result.php?id=&name=佐藤太郎&address=&sex=男性

になります。

このままですとクエリが読みにくいので、
--------------
id:
name:佐藤太郎
address:
sex:男性
--------------
の場合は

./result.php?name=佐藤太郎&sex=男性

と入力値のあるものだけを表示してそれ以外は消去したいです。

というのも、例としたform.phpではパラメータは4つでしたが、現在作成しているフォームではパラメータが21あり、空文字のものも含むと、遷移後の画面のURLがとても見にくいのです。

このようにパラメータを見やすくするようなjavascriptのコードを教えてください。

jQueryは1.7を使用しています。どうかよろしくお願いいたします。

A 回答 (3件)

onsubmitで入力チェックを行い、未入力があるときは当該要素をdisabledにする


ただし戻るなどしたときにdisabledになったままが気になるなら
onloadなどでdisabledをfalseにしてやる必要があるかも
    • good
    • 0

直接の回答ではないのですが、21もパラメータがあるのなら、POSTにしてはどうでしょうか。

    • good
    • 0

A No1様の回答とほとんど同じですが、



onsubmitで入力チェックを行い、スクリプト内でクエリ文字列を作成。
そのまま、スクリプトからリクエストを送信する。
DOMを変更しないので、「戻る」などを気にしなくてもよいかも…
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!