- ベストアンサー
name属性のあるフォームボタンを画像化する方法
- フォームボタンを画像化する方法について説明します。
- 送信ボタンを画像にする方法は簡単ですが、訂正ボタンは注意が必要です。
- 訂正ボタンを画像にする場合、name属性をうまく扱う必要があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
type="image" では value プロパティが使えなかったような? クリックした座標を value として送信する仕様だったはず。 いままで通り type="submit" で記述し、スタイルシートで画像に置換するのが手っ取り早いと思いますよ。 <input type="submit" class="retry" name="retry" value="訂正" /> input.retry { background:url(./img/retry.gif) no-repeat; width:使用する画像の幅px; height:使用する画像の高さpx; border:none; text-indent:-9999px; font-size:0px;/* ←歌劇対策 */ } こんな感じで
その他の回答 (2)
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
valueではなくaltを指定する方が良いです。 <input type="image" src="./img/retry.gif" name="retry" alt="訂正"> > しかし訂正ボタンを同じようにしたところ、訂正ボタンを押しても送信ボタンと同じアクションになってしまいます。 CGI側でretryのデータが処理されてないのは、type="image"を使用したときはretry=valueではなく、 retry.x=(クリックした場所のx位置) retry.y=(クリックした場所のy位置) という2つが送信されますから retryボタンは押されなかったと判断されているためだと思います。 retryというデータではなくretry.xが送信されたかどうかで判断するようにCGIスクリプトを書き換えてみて下さい。
お礼
ご回答ありがとうございました。 >CGI側でretryのデータが処理されてないのは、type="image"を使用したときは・・・ CGIスクリプトで教えていただいたようにretry.xが送信されたかどうかで判断するように書き換えようと思ったのですが、わからないことがあり断念しました。 今回は他の方法を教えていただきましたので、そちらで対応することにしました。 ありがとうございました。
- zeff
- ベストアンサー率69% (137/198)
<button type="submit" value="送信"><img src="./img/send.gif"></button> <button type="submit" name="retry" value="訂正"><img src="./img/retry.gif"></button> で出来ませんでしょうか。
お礼
ご回答ありがとうございました。 教えて頂いたようにbuttonでも正常に動作しました。 今回はスタイルシートで設定することにしました。 ありがとうございました。
お礼
的確なアドバイスありがとうございました。 教えて頂いたようにスタイルシートで設定し無事解決致しました。 type="image"ではvalueプロパティが使えないようですね。 勉強になりました。