有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java从javascript触发小程序按钮

我想使用javascript在单击普通html按钮时触发一个小程序按钮

public class appletToWrite extends Applet{
Button write;
static String msPath;
static String msData;
public appletToWrite()
{
    this.write = new Button("Save");
}

public static void initializeData(String asPath, String asData){
    msPath = asPath;
    msData = asData;
}

public void init() { 
    add(this.write, "Center");
    this.write.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent paramActionEvent) {
            foo();
        }
    }); }


public void foo(){
    new appletToWrite.WriteText();
}

public class WriteText {
    WriteText() {
        try {
            String str2 = "D:\\Documents and Settings\\varun.aggarwal\\Desktop\\sample\\wow.htm";
            File localFile = new File(str2);
            localFile.createNewFile();
            BufferedWriter localBufferedWriter = new BufferedWriter(new FileWriter(localFile, true));
            String str1="helllllllo";
            localBufferedWriter.write(str1);
            localBufferedWriter.close();
            JOptionPane.showMessageDialog(null, "File Successfully Saved!!! ");

        }
        catch (Exception localException) {
            JOptionPane.showMessageDialog(null, localException.getMessage());
        }
    }
}

}

可能吗

这与权限有关,因为我发现只有当我单击applet按钮时,文件IO权限才可用,而不是当我单击html按钮并调用applet方法foo时


共 (2) 个答案

  1. # 1 楼答案

    是的,这是可能的,JavaScript到小程序和小程序到JavaScript

    请查看本页的代码示例:Java - Javascript interaction

  2. # 2 楼答案

    在applet中创建一个方法,将所有代码包装在该方法中,并从action listener调用该方法foo()

    就像

    actionPerformed(){
            foo();
        }//just illustration
    

    现在

    <applet code="com.yourcompany.MyApplet"
    mayscript="true" name="myApplet" width="200" height="100">
    

    myApplet将从javascript获得foo();so

    myApplet.foo();//it will call that method