質問編集履歴

1 WSHのタグを追加しました。

na-ka

na-ka score 10

2017/09/06 07:48  投稿

".jse" ファイルで "addEventListener" が動作しない
お世話になっております。
さっそくですが、javascriptのコードでボタンを作り、ボタン・クリックを感知したいと思っています。
###知りたい事
".html"ファイルにjavascriptを埋め込んだときは望む動作します。
しかし、".jse"ファイルで動作させると、ボタンをクリックしても
クリックを感知してくれないようです。
何が違うのでしょうか。
".html"で求める動作は得られるのですが、".jse"ファイルでないと別の問題が出てくるため、まずはこの点をクリアーにしたいと考えました。
このやり方は"推奨しない"とか、"理論的にダメ"であれば、諦めて"html"での問題をクリアーにするようにします。
よろしくお願いします。
 
* x_xさん、ご指摘ありがとうございます。  
気づきが遅れて申し訳ありません。  
 
```javascript
コード
   //test.jes
   var ie = WScript.CreateObject("InternetExplorer.Application");
   ie.navigate('about:blank');
   var w = ie.document.parentWindow;
   ie.Visible = true;
   var doc = ie.document;                                   //.jseファイル用
//   var doc = document;                                       //.htmlファイル用
   doc.writeln("<div id='orgForm'></div>");               //フォームを作成
   var btn = doc.createElement('button');                   //ボタンオブジェクト作成
   btn.textContent = "ボタン";                               //ボタンの表示文字設定
   btn.addEventListener('click', function(e){               //ボタンのイベントリスナー設定
       doc.writeln("onclick");
   }, false);
   
   var form = doc.getElementById('orgForm');
   form.appendChild(btn);                                   //フォームへボタンを挿入する
   var p = doc.createElement('br');                       //改行を挿入
   form.appendChild(p);
   doc.writeln("writelnの確認");
```
```html
コード
<!-- test.html -->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <meta http-equiv="Content-Script-Type" content="text/javascript">
 <title>FileOpen.html</title>
</head>
<body>
 <script language="javascript">
/*
   var ie = WScript.CreateObject("InternetExplorer.Application");
   ie.navigate('about:blank');
   var w = ie.document.parentWindow;
   ie.Visible = true;
   var doc = ie.document;                                   //.jseファイル用
*/
   var doc = document;                                       //.htmlファイル用
   doc.writeln("<div id='orgForm'></div>");               //フォームを作成
   var btn = doc.createElement('button');                   //ボタンオブジェクト作成
   btn.textContent = "ボタン";                               //ボタンの表示文字設定
   btn.addEventListener('click', function(e){               //ボタンのイベントリスナー設定
       doc.writeln("onclick");
   }, false);
   
   var form = doc.getElementById('orgForm');
   form.appendChild(btn);                                   //フォームへボタンを挿入する
   var p = doc.createElement('br');                       //改行を挿入
   form.appendChild(p);
   doc.writeln("writelnの確認");
 </script>
</body>
</html>
```
  • JavaScript

    26385 questions

    JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

  • WSH

    48 questions

    WSH(Windows Script Host)とは、Windows上でテキストファイルに記述したJavaScriptやVBScriptなどのスクリプトを実行するホスト環境のことです。COMを通じたレジストリ操作やWMIへのアクセスが可能で、複雑な処理も行うことができます。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る