[英]Pass a value to javascript from Java
我有以下Java小程序。 它獲取用戶選擇的文件的絕對文件路徑:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.awt.Color;
/*
<OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width=150 height=100
codebase="http://java.sun.com/products/plugin/1.3/jinstall-13-win32.cab#Version=1,3,0,0">
<PARAM NAME="code" value="FileApplet.class">
</OBJECT>
*/
public class fileabs extends JApplet
{
private JTextField tfCount;
final JFileChooser fc = new JFileChooser();
public void init() {
setBackground(Color.WHITE);
JPanel p = new JPanel( new FlowLayout(FlowLayout.CENTER, 15, 15));
p.add(new JLabel("Select File: "));
tfCount = new JTextField(50);
tfCount.setEditable(false);
p.add(tfCount);
JButton b2 = new JButton("Browse...");
p.add(b2);
b2.addActionListener( new ActionListener(){
public void actionPerformed(ActionEvent ae) {
tfCount.setText("dsds");
int returnVal = fc.showOpenDialog(fileabs.this);
tfCount.setText(fc.getSelectedFile().getAbsolutePath());
}
} );
// p.add(label);
add(p);
}
}
但是,我需要能夠將其發送到另一種語言(python / django)的形式。 我將如何獲取abolsute路徑的值,以便可以在javascript中對其進行解析? 現在,即使該路徑顯示在applet中,我也無法訪問它。
您應該研究使用LiveConnect ,它允許小程序與頁面中的JavaScript交互,反之亦然。
以下代碼使用單個參數調用頁面中的全局JavaScript函數setPath
:
netscape.javascript.JSObject.getWindow(appletInstance)
.call("setPath", new Object[] { path });
必須在將參數mayscript
設置為true
或mayscript
下啟動小程序,才能使用LiveConnect。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.