网上搜索了半天也没有完整的解决方案。
用此方法需要添加到信任站点或解除未签名的ActiveX控件的禁用
项目需求是自动搜索客户端的图片,找到合适的自动上传(理论上能上
传任何东西)前提就是上面提到的.
用这个方法经测试成功.上传OK!(注意不安全哟,不要用此做坏事哟,
此源码只做交流,请不要用于非法用途)
大概写一下流程:
<HTML>
<HEAD>
<TITLE> 冲击多个Input File赋值兼解决中文赋值问题 </TITLE>
<SCRIPT LANGUAGE="JavaScript">
//简化写法
function $(id)
{
return document.getElementById(id);
}
//崋值方法(就是将文本框的值赋值file对象)
function set1()
{
//将text1中的值复制到剪贴板中
window.clipboardData.setData('text',$('t1').value);
//创建Shell(需要添加到信任站点或解除未签名的ActiveX控件的禁用
var WshShell=new ActiveXObject("WScript.Shell");
//拿到焦点
$('f1').focus();
//Ctrl + A 操作
WshShell.sendKeys("^a");
//Ctrl + V 操作(sendKeys对于中文赋值操作显得无力,所以只能模拟键盘操作)
WshShell.sendKeys("^v");
}
function set2()
{
window.clipboardData.setData('text',$('t2').value);
var WshShell=new ActiveXObject("WScript.Shell");
$('f2').focus();
WshShell.sendKeys("^a");
WshShell.sendKeys("^v");
}
function set3()
{
window.clipboardData.setData('text',$('t3').value);
var WshShell=new ActiveXObject("WScript.Shell");
$('f3').focus();
WshShell.sendKeys("^a");
WshShell.sendKeys("^v");
}
function set4()
{
window.clipboardData.setData('text',$('t4').value);
var WshShell=new ActiveXObject("WScript.Shell");
$('f4').focus();
WshShell.sendKeys("^a");
WshShell.sendKeys("^v");
}
//给当前网页中四个file对象赋值的方法
function set()
{
//此处不要用循环,有几个就需要写几个setXX方法
setTimeout("set1()",0);
setTimeout("set2()",70);
setTimeout("set3()",240);
setTimeout("set4()",340);
}
//检查是否赋值成功
function check()
{
//检查每个file对象是否为空
if($('f1').value.length > 0 && $('f2').value.length > 0 && $('f3').value.length > 0 && $('f4').value.length > 0 )
{
//检查原对象的值的赋值对象的值是否相同
if($('f1').value == $('t1').value && $('f2').value == $('t2').value && $('f3').value == $('t3').value && $('f4').value == $('t4').value)
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}
}
//赋值和file对象的检查
function setValues()
{
if(!check())
{
set();
}
}
//直接调用的赋值方法
function callSet()
{
//一定要用setInterval,而不能用循环(循环太快,会造成所有的值赋在一个file对象上)
setInterval('setValues()',1000);
}
</SCRIPT>
</HEAD>
<BODY>
<input type=text value='c:\a好.jpg' id='t1' /> <br />
<input type=text value='b:\b不好.jpg' id='t2'/> <br />
<input type=text value='c:\c好.jpg' id='t3'/> <br />
<input type=text value='d:\c很好.jpg' id='t4'/> <br />
<input type=file id='f1'/> <br />
<input type=file id='f2'/> <br />
<input type=file id='f3'/> <br />
<input type=file id='f4'/> <br />
<input type='button' id='btn1' onclick='callSet();' value='测试'>
</BODY>
</HTML>
分享到:
相关推荐
解决无法为FIle控件赋值的问题!并且支持中文赋值问题。
解决无法为FIle控件赋值的问题!并且支持中文赋值问题
假设我们有一个ID为"myInput"的input元素,我们可以这样为它赋值: ```javascript // 获取input元素 var myInput = document.getElementById('myInput'); // 给input元素赋值 myInput.value = '预设的值'; ``` 另...
关于`input file`的默认value清空与赋值方法,这里涉及到的是网页编程中的一个特定知识点。由于出于安全性考虑,JavaScript默认不允许直接修改`input`元素中的`file`类型的value值。但是,我们仍然有一些技巧性的...
在前端开发中,"input file上传图片预览"是一个常见的需求,它允许用户选择本地的图像文件,并在上传前提供预览。这个功能在许多网站和应用中都很实用,例如社交媒体平台、在线编辑器或者个人资料设置等。下面将详细...
"js获取input file 图片立即显示"这个话题就是关于如何利用JavaScript来实现在用户选择图片后即时预览的功能。以下是一个详尽的步骤解释和相关知识点: 1. **HTML 结构**: 首先,我们需要在HTML页面中创建一个`...
根据给定文件内容,下面介绍有关于jQuery实现input[type=file]多图预览上传删除功能的知识点。 ### jQuery实现多图上传预览与删除功能 #### 1. 前端界面结构 在实现多图上传预览与删除功能时,首先需要布局一个...
NULL 博文链接:https://liyoro.iteye.com/blog/829896
创建一个`<input type="file">`元素和一个用于预览的`<img>`元素。`<input>`元素添加一个`change`事件监听器,当用户选择文件时触发该事件。 ```html <!DOCTYPE html> 图片上传即时预览 <input type="file" ...
Android WebView支持input file启用相机/选取照片功能 Android WebView支持input file启用相机/选取照片功能是指在Android应用程序中使用WebView组件时,如何启用input file的相机/选取照片功能。本文将通过实例...
同样地,首先获取到`<input type="file">`元素,然后将其`outerHTML`属性赋值给自己。这种方法的逻辑是,通过重新设置`outerHTML`,浏览器会认为该元素已被删除并重新创建,从而清除了用户选择的文件。 1. `var obj...
**注意**:当多个复选框的`name`属性相同时,可以选择多项;若`name`属性不同,则视为不同的复选框组。 ##### 7. `type="radio"` - 单选按钮 单选按钮用于提供多个选项中的单选功能。 - **type**: 设置为"radio...
这个控件是ASP.NET中的一个服务器控件,它允许用户从他们的本地计算机选择一个文件并将其上传到服务器。下面将详细解释`HtmlInputFile`的使用方法、注意事项以及相关的C#代码实现。 `HtmlInputFile`控件的属性和...
在这个例子中,我们创建了一个表单,其中包含一个文件输入字段(`<input type="file">`)和一个隐藏输入字段(`<input type="hidden">`)。当用户选择一个文件后,点击提交按钮,`show_root`函数会被调用。 **...
本文将详细解释如何使用 JavaScript 获取 `input[type=file]` 元素的值,并将其显示在页面上。 首先,HTML 中的 `input[type=file]` 元素允许用户从本地文件系统选择文件。基本的 HTML 结构可能如下所示: ```html...
当`<input>`元素的`type`属性设置为`file`时,它允许用户选择一个或多个文件。 标题中提到的“清空input类型为file的value属性值的方法”,涉及到JavaScript在操作DOM时遇到的特性。在Web开发中,`value`属性用于...
这里,我们创建了一个`<input type="file">`标签,并添加了`ref="pathClear"`属性以便于在Vue组件的方法中引用它。同时,`@change="onUpload"`监听文件选择事件,当用户选择文件时会触发`onUpload`方法。 在Vue组件...
在上面的JavaScript代码中,我们使用了jQuery库来获取input file元素,并在其change事件中读取文件数组的第一个元素,然后使用FileReader对象来读取文件,并将读取结果赋值给img元素的src属性,以实现图片预览的功能...
在jQuery库中,`:file`选择器是一种特殊的选择器,用于选取HTML文档中类型为`<input type="file">`的元素。这类元素通常用于让用户从本地计算机中选择文件,以便上传到服务器。`:file`选择器是jQuery提供的众多基于...