0

こんにちは、smartGWT プロジェクトの HTML ファイルに書いた test という名前のネイティブ Js 関数を呼び出そうとしていますが、test は関数ではないと表示されています。

smartGWT クラスのネイティブ Java スクリプト コード:

public static native void  callTest()/*-{
        window.test();

}-*/;

HTMLfile の Java スクリプト関数:

 <script  type="text/javascript">   
    function test(){
        window.alert("test");
    }
    </script>

そして私も追加しました:

<script src="org.example.yourcode.Spiffy.nocache.js"></script>

しかし、私が言っているように、テストは関数ではないので、誰かが何か考えを持っているか、誰かが助けを提供できますか?
ありがとう

そして、window.test() の代わりに $window.test() を追加すると、次のメッセージが表示されますか?

ここに画像の説明を入力
$wnd.test(); を使用すると、次のエラーが発生しました:

$wnd.test() 使用時のエラー

4

3 に答える 3

0

GWT JavaScript はホスト ページの iframe に読み込まれるため、JavaScript の「ウィンドウ」と「ドキュメント」は iframe を参照します。GWT はホスト ページの「window」と「document」を$wndおよびでエイリアス化します$doc

このセクションをすべて読んでください: http://www.gwtproject.org/doc/latest/DevGuideCodingBasicsJSNI.html

于 2013-08-31T15:28:44.983 に答える