restofwaterimpのぎじゅつMemo

SIerに所属。企画から運用まで幅広くやってます。C#中心に書いてます。

【メモ】.jsないではJSPのコードは起動しない

昨日まで、ずっとはまっていたこと・・・。

 

.js内でformのsubmit()をしようとしても、

「引数が無効です」と、

submit()のところにエラーがかかっていた。

ずっと、submit()がイカンのか??と思っていたのだが、

原因は違う所でした。

 

<環境>

JDK 1.5

Struts 1.1

・Tomcat5.5

=抜粋=

hoge.jsp

<body onload="javascript:onclick();">

 

hogehoge.js

function onclick(){

  top.window.opener.top.form1.action = "<%= request.getContextPath %> /xxxx"

 top.window.opener.top.form1.submit();

}

と、した所、submit()でエラーが発生するんですね。

 

ずっと悩んでいた結果、わかりましました。

<%= request.getContextPath %>

が原因でした。

 

.jsp内部にJavaScriptを記載したときはスクリプトレットが効くみたいですが、

.jsではダメみたいです。

jspにjsがインポートみたいに使われるわけではないようです。

 

解消としては、jsの内容をjspに記載して解決しました。

 

単純なことで悩んでいたな〜〜と。

解決できたから良かったけど。