applet和javascript的通信
在Java Applet小程序中使用JavaScript
Live Connect提供了Java与JavaScript的接口,可以允许在Java Applet小程序中使用JavaScript。具体步骤如下:1) 在HTML脚本中使用〈APPLET〉标志的MAYSCRIPT属性,以允许Java Applet小程序访问脚本;2) 将netscape. JavaScript包导入Java Applet小程序;(这个包在C:\Program Files\Java\jdk1.5.0_06\jre\lib\plugin.jar(jdk1.5)中,jsobject.jar<下载后改成jsobject.jar就行,其他名字也行,后缀必须是jar>)
3)在Java Applet小程序中用JSObject类的getWindow(方法创建JavaScript窗口的句柄;
4)在Java Applet小程序中用JSObject类的getMember(方法访问JavaScript对象;
5) 在Java Applet小程序中用JSObject类的eval(方法调用JavaScript方法。
示例:
“ReadForm. Java”
import netscape.javascript.JSObject;import netscape.javascript.JSException;
……
win=JSObject.getWindow(this); // 获取JavaScript窗口句柄,引用当前文档窗口doc=(JSObject)win.getMember("document"); // 访问JavaScript对象form=(JSObject)doc.getMember("textForm");textField=(JSObject)form.getMember("textField");text=(String) textField.getMember("value"); //获取文本区的值
……
win.eval("alert(\"This alert comes from Java!\")");
//调用JavaScript的alert()方法,当然也可以是用户自己写的JavaScript函数,如下:
window.eval("testFunction()");
2.JavaScript访问Applet
<applet name="appletName" ....../> //JavaScript访问Applet属性 window.document.appletName.appletField (属性必须是public的,"window.document."也可以不写) //JavaScript访问Applet方法 window.document.appletName.appletMethod (方法必须是public的,"window.document."也可以不写)