- PR -

JavaScriptからActionを起こしたい。

投稿者投稿内容
さく
ベテラン
会議室デビュー日: 2004/06/11
投稿数: 74
投稿日時: 2004-12-27 17:11
お世話になっております。
題記の件、可能でしょうか?

処理内容)
画面を表示時、onload()で、JavaScriptを最初に走らせます。

ActiveXObject()で外部プログラムを実行。

正常時、DBに正常フラグを登録。

処理完了のメッセージを画面に表示。

上記を、自動でやりたいのですが、
外部プログラム実行後に行う、
正常時のDBに登録する処理で悩んでいます。

現状、DB登録を行うActionを起こすには、
ボタン等で起こす方法しか分かりません。

子画面を出すときに、window.open(action_name, size)
でActionを起こしていると思いますが、
子画面を出さずに、Actionだけってのは可能なのでしょうか?
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2004-12-27 17:49
サイトに接続したとたん、手元のマシンの内部でプログラムがうろちょろ・・・。
というのは、セキュリティ上、危険ではありませんか?
JavaScriptでは、そのような動作は禁じていると思います。

外部プログラムを走らせているのですから、その外部プログラムが、
サーバーと接続する機能を自分で備えている方が、現実的と思います。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2004-12-27 17:50
せっかくActiveXを使っているのですから、
ActiveXでJSPなり***.doなりをターゲットにして
HTTPのリクエストを送るという手があります。
XMLHTTPをMSDNで調べてみてください。
postもgetも可能ですし、レスポンスの取得も可能です。
さく
ベテラン
会議室デビュー日: 2004/06/11
投稿数: 74
投稿日時: 2004-12-28 22:42
返答ありがとうございます。

ウィルスに感染しやすい状況になって困っています。
コーディングは先延ばしでセキュリティを調査してました。
アンチウィルスソフトで検疫できている状況なのですが。

セキュリティで質問があるのですが、
インターネットオプションの「セキュリティ」タブ→「信頼済みサイト」に
サーバのURLを登録してレベルを「低」にして、ActiveXを動作させるように
したのですが、これは駄目なのでしょうか?
その他は、規定値です。

var objHttp = new ActiveXObject( 'Microsoft.XMLHTTP');
objHttp.open("POST", url, true);
objHttp.send() ;

で、urlに指定したActionを動作させる事ができたのですが、
undefineっていうダイアログが出てしまいます。

まだ設定が足りないのでしょうか?

ウィルスが目立つようになったのは、上記を設定してからなのですが
関係があるのでしょうか?
それとも偶然なのでしょうか?

ちょっとパニックになっています(TT)。

かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2004-12-28 23:03
本当に信頼できるサイトを
信頼済みにするのであれば問題ありません。
ウィルスとは別問題です。

引用:

で、urlに指定したActionを動作させる事ができたのですが、
undefineっていうダイアログが出てしまいます。



undefineっていうダイアログってどんなのですか?
さく
ベテラン
会議室デビュー日: 2004/06/11
投稿数: 74
投稿日時: 2004-12-28 23:29

早速の返答ありがとうございます。

たまたまウィルスにヒットしてしまっただけなら
いいのですが…。
同じ日に2度、それぞれスパイとトロイの木馬のウィルスに
当たったので気になってます。

OSのセキュリティパッチを更新していないからかな…?

undefineのダイアログは、アクションを起こした後に
出てきます。
画面の中央に、OKボタンと「undefine」っていうメッセージが
書いてあるダイアログです。

宜しくお願いします。

さく
ベテラン
会議室デビュー日: 2004/06/11
投稿数: 74
投稿日時: 2004-12-29 07:04
おはようございます。

undefineダイアログ表示の件ですが、
情報が少なすぎると思い追加します。

個人的には、「Microsoft.XMLHTTP」を疑っているのですが。

これって最新版を更新するとかあるのでしょうか?

それから、オブジェクトをクローズしなければいけないって
事はないですか?
現状、obj.send(); 以降何もやっていないのですが…。
takamaro
大ベテラン
会議室デビュー日: 2004/10/12
投稿数: 100
投稿日時: 2004-12-29 16:55
うーん、、よく話が飲みこめてはいませんが。。。
単にJavaScriptで<FORM ACTION>と同様の遷移を実行したいのでしたら、
JavaScript内で。。。

コード:


<SCRIPT>
function execute()
{
  ・
  ・
document.forms[0].submit();
}
</SCRIPT>
  ・
  ・
<BODY onLoad="execute()">
<FORM ACTION="***" METHOD="POST" TARGET="_top">
<INPUT TYPE="HIDDEN" NAME="HIDDEN1">
</FORM>


と外部アプリ実行後に実行するのは如何でしょうか?
値(パラメータ)の受け渡しなら<INPUT TYPE="HIDDEN">の値(value)に
submit()実行前に設定すれば可能かと思われます。
FORMが見た目上、表示されることもありませんし。

[ メッセージ編集済み 編集者: takamaro 編集日時 2004-12-30 08:28 ]

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