Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 标识将文件拖动到的小程序_Java_Javascript_Applet - Fatal编程技术网

Java 标识将文件拖动到的小程序

Java 标识将文件拖动到的小程序,java,javascript,applet,Java,Javascript,Applet,我使用JavaApplet作为上传文件的盒子。从文件系统中选择文件并在小程序上拖动它们会导致将文件路径名添加到输入文本框中 目前的设计如下:每个“上传”按钮周围都有一个拖放小程序、一个单选框和一个输入框。每个无线盒子都有自己的id。拖放是使用java.awt.datatransfer packagee中的方法实现的。当用户在所选小程序上放置文件时,请遵循Java代码 getAppletContext().showDocument (new URL("j

我使用JavaApplet作为上传文件的盒子。从文件系统中选择文件并在小程序上拖动它们会导致将文件路径名添加到输入文本框中

目前的设计如下:每个“上传”按钮周围都有一个拖放小程序、一个单选框和一个输入框。每个无线盒子都有自己的id。拖放是使用java.awt.datatransfer packagee中的方法实现的。当用户在所选小程序上放置文件时,请遵循Java代码

          getAppletContext().showDocument
            (new URL("javascript:appletUpdateFile()"));
          }
调用javascript函数。一切正常。但是有一个问题-我对所有上传按钮使用一个小程序。事实上,它是用于CMS的外部用户脚本IEPro的一部分,因此在CMS的当前页面中可能有很多“上传”按钮。因此,为每个按钮创建唯一的小程序不是一个可接受的解决方案

必须以某种方式确定属于某个“上传”按钮/拖放框的输入框应该更新。目前它是由无线电设备决定的。所以用户需要在实际拖动小程序上的文件之前选择特定的选项。从用户的角度来看,此步骤是多余的

我想以某种方式确定哪些小程序被拖动到文件而不使用无线电框。到目前为止,我已经尝试了几种方法:

1在小程序的父元素上使用mouseover、mouseup等进行识别-它可以选择并设置正确的小程序设置电台框、变量等。。但是它不起作用,因为如果光标保存文件,所有鼠标事件都将被忽略

2使用此关键字作为appletUpdateFile函数的参数-这显然也不起作用,浏览器当然无法确定“new URLjavascript:appletUpdateFile”的调用方小程序


所以,我希望我打了足够多的字来介绍这个问题。我非常感谢applet或JavaScript方面的任何方法来完成这项任务。

当您通过PHP、JavaScript或其他方式生成applet的对象标记和输入框时,如果它们是在循环中生成的,您可以向每个applet传递一个唯一的值,候选值是$i的当前值,您也可以使用该值来标识输入框,例如,将id属性设置为类似于inputBox$i的值。小程序将此值传递给appletUpdateFile函数,然后该函数可以通过document.getElementByIdinputBox+idNumber访问相应的输入框