0

私がやりたいのは、アプレットから JavaScript 関数を呼び出して複数の変数を渡すことだけです。これは 1 つの変数だけで実行できますが、複数で実行したいと考えています。

アプレットから Javascript 関数を呼び出し、機能する変数を 1 つ渡します。

  msg = "test";
    try {
        getAppletContext().showDocument
                (new URL("javascript:UpdateComputerDetails(\"" + msg + "\")"));
    }
    catch (MalformedURLException me) { }

この関数に複数の変数を渡すにはどうすればよいですか?

4

2 に答える 2

0

あなたは単に使用したいと思うでしょう:

arg1 = "foo";
arg2 = "bar";
try {
    getAppletContext().showDocument
            (new URL("javascript:UpdateComputerDetails(\"" + arg1 + "\", \"" + arg2 + "\")"));
}
catch (MalformedURLException me) { }

マスターするのが難しいのは、実際にURLを作成することです。これは、何らかの方法でいくつかのものをエスケープする必要があるためです。JSで一重引用符を使用すると、痛みを和らげることができます。

"javascript:UpdateComputerDetails('" + arg1 + "', '" + arg2 + "')"

ここで、注意する必要があります。arg1また、arg2(さらに多くの場合は、他の引数も)含まれていないか'(または"二重引用符の構文を使用している場合)、URLを作成する前にこれらが適切にエスケープされます。

于 2012-07-23T09:10:29.830 に答える
0

liveconnect パッケージがありますが、クロスブラウザーでどの程度うまく機能するかわかりません: http://docs.oracle.com/javase/tutorial/deployment/applet/invokingJavaScriptFromApplet.html

于 2012-07-20T09:07:26.003 に答える