- PR -

ラベルをリアルタイムに更新したいのですが・・

1
投稿者投稿内容
のりこ
会議室デビュー日: 2005/05/31
投稿数: 17
投稿日時: 2005-06-20 14:39
毎度お世話になっております。

.NETで処理状況をクライアントにリアルタイムで表示したいのですが、
ボタン押下時のソースに
label.txt = "処理開始"
処理内容
label.txt = "処理終了"
と書いても
処理中に"処理開始"と出力されません。
(処理完了後に「処理終了」と出ます)
リアルタイムに表示する方法はないでしょうか?
ご指導お願い致します。


hira
常連さん
会議室デビュー日: 2004/05/07
投稿数: 33
投稿日時: 2005-06-20 15:04
こんにちは。hiraです。

まず、環境を書きましょう
最低限C/SかWebアプリどちらかぐらい。

たぶんWebアプリだと思いますが、
Webアプリの処理の流れを理解しましょう!

参考までに、この会議室の過去ログを検索したら
以下が出てきました。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=18149&forum=7



[ メッセージ編集済み 編集者: hira 編集日時 2005-06-20 15:04 ]
一休
常連さん
会議室デビュー日: 2003/11/26
投稿数: 20
投稿日時: 2005-06-20 15:30
Windowsアプリだったら
Application.DoEvents()
でできます。
のりこ
会議室デビュー日: 2005/05/31
投稿数: 17
投稿日時: 2005-06-20 16:00
ありがとうございます。
DoEventsはWebアプリでは無理なのですね。。
いろいろありがとうございました。
代替案考えて見ます。
hira
常連さん
会議室デビュー日: 2004/05/07
投稿数: 33
投稿日時: 2005-06-20 16:16
hiraです。

もっといい方法が有るとは思うのですが、
WEBアプリで簡単に出来る案を出したいと思います。

@押下したいボタン以外に、もう一つ幅0ピクセルのボタンを準備

A押下したいボタンのイベントで、label.txt = "処理開始"
 その後、JavaScriptで@のボタンを押下するPGを仕込んで処理終了

B0ピクセルのボタンのイベントに
 通常処理とlabel.txt = "処理終了" を記述

これで、Aの終了タイミングで一度クライアントに戻るので
処理開始が表示できるかと思います。

ただし、1度の通信で済むのを2度通信を行ってしまうという問題があります。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-06-21 21:06
> 押下したいボタン以外に、もう一つ幅0ピクセルのボタンを準備
 幅0は、IEでは見えませんが、その他では見えます。


1.クリック対象のボタンの、onClickイベントに、
  label1.innerText = '処理中';
  を追加。
  #####
  サーバーコードで、
  Button1.Attributes("onClick") = "label1.innerText = '処理中';"

2.現コードの、"処理開始"は取る
_________________
1

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