- ベストアンサー
リンク先のurlに?がついてしまいます。
テーブルのセル部分からリンクを貼りたくて、ここで質問したところ、下記のようなやり方を教えてもらいました。 それでうまくいったのですが、リンク先に行った後ツールバーを確認するとurlの最後に?が表示されています。 データがGETで送信されているためなのかなと思っていますが、これは特に問題ないんでしょうか? ×××.htmを呼び出したいところが、×××.htm?を呼び出しているかんじになっています。 <HTML> <HEAD> <TITLE></title> <SCRIPT language="JavaScript"> <!-- function goPage(){ document.forms[0].action="xxx.htm"; document.forms[0].submit(); } // --> </Script> </HEAD> <BODY> <FORM> <TABLE border="1"> <TR> <TD onclick="goPage()">クリックすると遷移します</TD> </TR> </TABLE> </FORM> </BODY> </HTML>
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
<TD onclick="location.href='http://***'">リンク</TD> じゃだめ?
その他の回答 (3)
- Seiryo
- ベストアンサー率13% (27/203)
??結局なにがしたいのこのスクリプトは? ページを移動したいだけとはちがうんかな?
お礼
そのとおりでございます。 こんなことしなくても簡単にできたんですね
すいません、勢いで送ってしまったので追記。(^^;; ちなみにURLの最後に?がついていても、特に問題はないです。 GETで情報を送るとき、 http://URL?Name=VALUE という形で送るのですが、Name=VALUEの部分(つまり、フォームのエレメンツ要素)が無いために、「?」だけが残るわけです。 それがあってもその後の情報は無いことになるので問題はないですし、それ以前にhtmlファイルに情報を送ったところで処理しませんので全く問題ありません。 ただ、<TD>タグのonClickというのを使ったことがないので、このソースに関しては未確認です。
お礼
早速回答ありがとうございます。 なるほど ?がついても特に問題ないんですね。 ちなみにmethod="post"を指定したらエラーが出ました。 でもこんなややこしいことしなくても#4の回答どおりにやったら簡単にできました。
<FORM>タグにMETHODが指定されていないので、GETになっているからでは? <FORM METHOD="post">とすれば、消えると思います。
お礼
すばらしい! javaを使わなくてもできたんですね。 ありがとうございます。