我有一个小程序,其中有两种我想使用的方法。在第一种方法中,我获取客户端打印机列表。
我想在我的 HTML 页面上以组合方式使用此打印机列表。用户应该从此组合中选择打印机。之后,用户将单击按钮来执行一些操作。单击该按钮并完成这些操作后,我想打电话 我的小程序的第二种方法,它获取两个参数,一个是文件对象,另一个是用户已经选择的打印机对象。
我的问题是:
如何获取打印机列表并在页面加载后在 HTML 页面上使用它?
点击按钮后如何向小程序的第二个方法发送参数?
在 html/jsp 中使用对象 id 标签
<object id="appletId" type="application/x-java-applet"
要获取打印机列表,您应该调用小程序方法
<script type="text/javascript">
function getPrinters(){
return appletId.getPrinters();
}
</script>
假设小程序具有返回字符串数组的公共方法
getPrinters
。
To have my applet work;
1- I exported the applet as jar file(named as printApplet.jar) and copied it under the same folder as my xhtml page.
2- I put the applet in xhtml as below;
<applet id="myApplet"
code="com.xxx.yyy.console.action.PrintApplet"
archive="printApplet.jar" width="1" height="1">
</applet>
3- I created a method `enter code here`in the applet which gets printer names as string and has comma(,) between the names.
4- I called the applet methods using javascript as below;
<script type="text/javascript" >
//<![CDATA[
function getPrinters() {
var aplt = document.getElementById("myApplet");
var printers = aplt.getPrinterNames();
var p = printers.split(',');
var c = document.getElementById("combo");
for ( var i = 0; i < p.length; i++) {
var o = document.createElement("option");
o.text = p[i];
o.value = i;
try {
c.add(o, null); //Standard
} catch (error) {
c.add(o); // IE only
}
}
}
//]]>
</script>