- PR -

ボタン押下時にフラグを変更する方法

1
投稿者投稿内容
kセイバー
常連さん
会議室デビュー日: 2005/10/12
投稿数: 33
投稿日時: 2006-02-16 10:51
現在、ボタン押下時に、フラグを変更し、別のjspを呼び出すプログラムを作っているのですが、ボタンのonClickイベント内から呼び出す、function serchメソッド内に<%%>を使ってフラグを1に変更する処理を記述して実行すると、最初のjsp読み込み時にフラグが1になってしまいます。
たぶん、サーバ側、クライアント側の違いが原因でうまくいかないのだと思われます。
そこで、ボタン押下時に、フラグを1に変える方法を知っている方がいれば、教えていただけないでしょうか?
ハツキタツミ
大ベテラン
会議室デビュー日: 2005/05/24
投稿数: 108
投稿日時: 2006-02-16 11:02
引用:
ボタンのonClickイベント内から呼び出す、function serchメソッド内に<%%>を使ってフラグを1に変更する処理を記述して実行すると、最初のjsp読み込み時にフラグが1になってしまいます。


<% %>でくくっている部分はサーバサイドで動くのだから当たり前だ罠
引用:
たぶん、サーバ側、クライアント側の違いが原因でうまくいかないのだと思われます。


そう

引用:
そこで、ボタン押下時に、フラグを1に変える方法を知っている方がいれば、教えていただけないでしょうか?


JavaScriptでやればよい。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2006-02-16 12:31
フラグってなんですか?何の目的に使用されるものですか?
それらの情報がないのにフラグとだけ言われても、
的確な回答ができませんよ。

サーバサイドに持つフラグなら、リクエストを送ってサーバ側で変更しなければいけませんし、
クライアントサイドで持つフラグなら、
コード:
var flag = <%=request.getAttribute("flag_name")%>;

function search(){
    flag = 1;
}


と、こんな感じで処理できると思いますが。
kセイバー
常連さん
会議室デビュー日: 2005/10/12
投稿数: 33
投稿日時: 2006-02-16 14:22
ご返事いただきありがとうございます
一部説明が足りなかったようなので補足します。
フラグはサーバサイドjavaで
<% private static int flg=0; %>
という風に宣言しています。

フラグはフレーム上のbutton.jspからsubmitでフレーム下のpreview.jspへ飛ぶ直前に変更します。
preview.jspはフラグを見て0の場合処理を行わず、1の場合処理を行う仕様にしています。
値はrequest.getParameterVallues("flg");で持ってくる予定です。

button.jsp(呼び出し元)からpreview.jsp(呼び出し先)を呼び出すコードは現在以下のようにしています。
function serch(){
<%flg=1;%>
window.document.form.submit();
}
}
箇条書きで申し訳ないですが、宜しくお願いします
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2006-02-16 14:58
サーバサイドとクライアントサイドの技術の違いを理解されていますか?
その辺の理解を深めてからのほうがよいかと思います。

コード:
function serch(){ 
    <%flg=1;%> 
    window.document.form.submit(); 
}


このように書くと、ブラウザに対してJavaScriptを示す文字列を送信する段階で
flg = 1という処理が実行されます。

JavaScriptが実行されるのはブラウザであり、
どんな処理が行われているかはサーバは知りません。
サーバに指示を出すにはサーバに送信するしかありません。
kセイバー
常連さん
会議室デビュー日: 2005/10/12
投稿数: 33
投稿日時: 2006-02-16 15:34
レスいただきありがとうございます。
サーバサイドとクライアントサイドの違いはわかっています。
だからこのコードが間違っているのはわかります。
今回、聞いているのは、ボタンを押した時にフラグを変更しPOSTする方法です。
コードはしたいことを書いただけなので、別の実現方法を知っている方がいればご教授願います。
burton999
ぬし
会議室デビュー日: 2003/10/06
投稿数: 898
お住まい・勤務地: 東京
投稿日時: 2006-02-16 15:38
それならばJavaScriptでフラグの値をHiddenにでも格納して、POSTすればいいのでは。
kセイバー
常連さん
会議室デビュー日: 2005/10/12
投稿数: 33
投稿日時: 2006-02-16 16:31
お返事をいただきありがとうございます。
>それならばJavaScriptでフラグの値をHiddenにでも格納して、POSTすればいいのでは。
この方法ならうまくいきます。
ありがとうございました
1

スキルアップ/キャリアアップ(JOB@IT)