`

冲击多个Input File赋值兼解决中文赋值问题

 
阅读更多
网上搜索了半天也没有完整的解决方案。
用此方法需要添加到信任站点或解除未签名的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>
分享到:
评论

相关推荐

    冲击多个Input File赋值兼解决中文赋值问题!

    解决无法为FIle控件赋值的问题!并且支持中文赋值问题。

    file控件无法赋值解决实例

    解决无法为FIle控件赋值的问题!并且支持中文赋值问题

    javascript input自动赋值

    假设我们有一个ID为"myInput"的input元素,我们可以这样为它赋值: ```javascript // 获取input元素 var myInput = document.getElementById('myInput'); // 给input元素赋值 myInput.value = '预设的值'; ``` 另...

    input file的默认value清空与赋值方法

    关于`input file`的默认value清空与赋值方法,这里涉及到的是网页编程中的一个特定知识点。由于出于安全性考虑,JavaScript默认不允许直接修改`input`元素中的`file`类型的value值。但是,我们仍然有一些技巧性的...

    input file上传图片预览

    在前端开发中,"input file上传图片预览"是一个常见的需求,它允许用户选择本地的图像文件,并在上传前提供预览。这个功能在许多网站和应用中都很实用,例如社交媒体平台、在线编辑器或者个人资料设置等。下面将详细...

    js获取 input file 图片立即显示

    "js获取input file 图片立即显示"这个话题就是关于如何利用JavaScript来实现在用户选择图片后即时预览的功能。以下是一个详尽的步骤解释和相关知识点: 1. **HTML 结构**: 首先,我们需要在HTML页面中创建一个`...

    jQuery实现input[type=file]多图预览上传删除等功能

    根据给定文件内容,下面介绍有关于jQuery实现input[type=file]多图预览上传删除功能的知识点。 ### jQuery实现多图上传预览与删除功能 #### 1. 前端界面结构 在实现多图上传预览与删除功能时,首先需要布局一个...

    extjs.form.file inputtype为“file”时无法用setValue方法赋值的解决方法

    NULL 博文链接:https://liyoro.iteye.com/blog/829896

    input file图片上传即时预览

    创建一个`&lt;input type="file"&gt;`元素和一个用于预览的`&lt;img&gt;`元素。`&lt;input&gt;`元素添加一个`change`事件监听器,当用户选择文件时触发该事件。 ```html &lt;!DOCTYPE html&gt; 图片上传即时预览 &lt;input type="file" ...

    Android WebView支持input file启用相机/选取照片功能

    Android WebView支持input file启用相机/选取照片功能 Android WebView支持input file启用相机/选取照片功能是指在Android应用程序中使用WebView组件时,如何启用input file的相机/选取照片功能。本文将通过实例...

    将input file的选择的文件清空的两种解决方案

    同样地,首先获取到`&lt;input type="file"&gt;`元素,然后将其`outerHTML`属性赋值给自己。这种方法的逻辑是,通过重新设置`outerHTML`,浏览器会认为该元素已被删除并重新创建,从而清除了用户选择的文件。 1. `var obj...

    input 标签的属性

    **注意**:当多个复选框的`name`属性相同时,可以选择多项;若`name`属性不同,则视为不同的复选框组。 ##### 7. `type="radio"` - 单选按钮 单选按钮用于提供多个选项中的单选功能。 - **type**: 设置为"radio...

    VS08 c# HtmlInputFile 的使用代码

    这个控件是ASP.NET中的一个服务器控件,它允许用户从他们的本地计算机选择一个文件并将其上传到服务器。下面将详细解释`HtmlInputFile`的使用方法、注意事项以及相关的C#代码实现。 `HtmlInputFile`控件的属性和...

    input file获得文件根目录简单实现

    在这个例子中,我们创建了一个表单,其中包含一个文件输入字段(`&lt;input type="file"&gt;`)和一个隐藏输入字段(`&lt;input type="hidden"&gt;`)。当用户选择一个文件后,点击提交按钮,`show_root`函数会被调用。 **...

    JS获取input[file]的值并显示在页面的实现方法

    本文将详细解释如何使用 JavaScript 获取 `input[type=file]` 元素的值,并将其显示在页面上。 首先,HTML 中的 `input[type=file]` 元素允许用户从本地文件系统选择文件。基本的 HTML 结构可能如下所示: ```html...

    清空input类型为file的value属性值的方法

    当`&lt;input&gt;`元素的`type`属性设置为`file`时,它允许用户选择一个或多个文件。 标题中提到的“清空input类型为file的value属性值的方法”,涉及到JavaScript在操作DOM时遇到的特性。在Web开发中,`value`属性用于...

    vue 清空input标签 中file的值操作

    这里,我们创建了一个`&lt;input type="file"&gt;`标签,并添加了`ref="pathClear"`属性以便于在Vue组件的方法中引用它。同时,`@change="onUpload"`监听文件选择事件,当用户选择文件时会触发`onUpload`方法。 在Vue组件...

    input type=file 选择图片并且实现预览效果的实例

    在上面的JavaScript代码中,我们使用了jQuery库来获取input file元素,并在其change事件中读取文件数组的第一个元素,然后使用FileReader对象来读取文件,并将读取结果赋值给img元素的src属性,以实现图片预览的功能...

    jQuery中:file选择器用法实例

    在jQuery库中,`:file`选择器是一种特殊的选择器,用于选取HTML文档中类型为`&lt;input type="file"&gt;`的元素。这类元素通常用于让用户从本地计算机中选择文件,以便上传到服务器。`:file`选择器是jQuery提供的众多基于...

Global site tag (gtag.js) - Google Analytics