- - PR -
server.transferとresponse.redirectについて
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-08-23 09:53
お世話になります。
ただいまvb.netで開発してるのですが、 ログイン画面からserver.transferをつかって次の画面(b.aspx)に移って そこにテキストボックスとボタンを配置してます。 その後テキストボックスに入力してもらったものを DBに登録というかたちにしてるんですが、 server.transferを使った場合テキストボックスには 全角英語と半角全角日本語を入力しても空白として扱われます。 空白チェックとして if textbox1.text = "" then label1.text = "テキストボックスが空白です" else 登録処理 end if としているのですが テキストボックスに全角英語と半角全角日本語を入力して 上の処理を1度通すと空白として扱われますが、 1度通した後は全角英語と半角全角日本語を入力しても普通にテキストボックスの 値が取れます。(全角英語と半角全角日本語を入力しても値をとります) response.redirectを使うと上記のようなことは おきません。 んじゃresponse.redirectを使えばいいじゃんと思いますが、 server.transferでいかねばならないのです。 対処方法を教えていただけないでしょうか? [ メッセージ編集済み 編集者: JOJO 編集日時 2005-08-23 09:53 ] | ||||||||
|
投稿日時: 2005-08-23 10:17
これは「空白」ではなく、長さが0の文字列のチェックをしているということですよね。 このコードはどこに書きましたか?
なぜですか?支障の無い範囲で書いていただければ対処方法があるかもしれません。 _________________ たつごろー codeseek こみゅぷらす | ||||||||
|
投稿日時: 2005-08-23 10:42
b.aspxのポストバックがうまくいってなくて、一回目はこのチェックの
ロジックの部分そのものを通ってないんじゃないかと思います。 たつごろーさんが言ってるように、この「空白チェック」はどこに書いていて どうやって実行されるのかを整理してみてください。 普通はServer.Transferをやってもポストバックはちゃんと動くはずなんですけどねぇ。 | ||||||||
|
投稿日時: 2005-08-23 10:48
if文を書いているところは
Private Sub Boton1_Click です。 server.transferでいかないといけない理由なんですが server.transferでやりなさいと 上の方にいわれたので それ以外はだめみたいなんです | ||||||||
|
投稿日時: 2005-08-23 11:13
"何か"やってますよね。
プロジェクトを新しく作って、ページを2つ作って、Transferさせてみても正しくTextBox の値を取得できました。 でもなぜか分からない、そんな時には「InetSpy」! いつもお世話になってます。 参考: http://hide.maruo.co.jp/software/inetspy.html | ||||||||
|
投稿日時: 2005-08-23 11:30
新しいやつをつくってやった場合たしかに
動きました。 でも本来の方はまだ動きません。 なぜなんでしょう? | ||||||||
|
投稿日時: 2005-08-23 11:38
それをInetSpyでJOJOさんが確認してみるんです。 InetSpyというのは、ブラウザとサーバーのやり取りを見ることができるソフトウェアです。 サーバーとクライアントでどのようなやり取りをしているのか。 TextBoxに入力したテキストはどのように受け渡しされているのか(あるいはされていないのか)。 確認してみてください。 | ||||||||
|
投稿日時: 2005-08-23 11:43
すんません
ただいま確認中です もうしわけございません |