<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    我的漫漫程序之旅

    專注于JavaWeb開發
    隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
    數據加載中……

    沖擊多個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>


    posted on 2008-09-05 17:09 々上善若水々 閱讀(7338) 評論(8)  編輯  收藏

    評論

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    好思路 多謝了 長久以來 我也在考慮這個問題 多謝!
    2008-09-08 15:22 | walnutprince

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    賦值是成功了,但是無法submit,會拒絕訪問啊
    2008-09-22 17:29 | Nickol

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    可以submit的。注意你安全設置問題。
    2008-09-23 13:46 | 々上善若水々

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    賦值成功了,但是無法submit,提示拒絕訪問?? 請問如何進行安全配置?
    我已經將服務器IP加入 受信任站點 并將受信任站點的 安全級別設置為-低!!

    謝謝!!
    2009-03-31 17:03 | LCP

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    @LCP
    在本地Internet中添加可信站點即可.
    2009-04-01 13:16 | 々上善若水々

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    貌似IE8之后File標簽都不支持手動輸入了
    2012-12-24 13:43 | ant

    # re: 沖擊多個Input File賦值兼解決中文賦值問題  回復  更多評論   

    file類型只讀的,怎么實現粘貼的?
    2013-03-25 15:22 | nbuu

    # re: 沖擊多個Input File賦值兼解決中文賦值問題[未登錄]  回復  更多評論   

    我的只是焦點可以進去 為什么賦值會失敗...
    2014-11-09 11:07 |

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 日韩特黄特色大片免费视频| 久久久久亚洲AV成人无码| 一级毛片试看60分钟免费播放| 亚洲午夜久久久久妓女影院 | 亚洲午夜福利717| 国产成人精品久久免费动漫| 国产精品亚洲综合| 亚洲av日韩av天堂影片精品| 在线观看无码AV网站永久免费| 人妻巨大乳hd免费看| 亚洲精品视频在线观看免费| 亚洲AV网站在线观看| 最近中文字幕国语免费完整 | 亚洲明星合成图综合区在线| 国产无遮挡裸体免费视频| 久久免费视频观看| 麻豆亚洲AV成人无码久久精品 | 亚洲av中文无码乱人伦在线咪咕| 午夜福利不卡片在线播放免费| fc2成年免费共享视频网站| 国产成人精品亚洲日本在线| 亚洲一区二区三区香蕉| 日本一道高清不卡免费| 2015日韩永久免费视频播放 | 黄页网站在线视频免费| 亚洲成在人线电影天堂色| 久久影视国产亚洲| 日韩免费观看的一级毛片| h片在线免费观看| 在线观看特色大片免费网站| 国产精品亚洲一区二区在线观看| 亚洲美女免费视频| 亚洲国产精品SSS在线观看AV| 国产91在线免费| 夫妻免费无码V看片| 亚洲一区二区三区免费视频| a级毛片高清免费视频| 免费又黄又爽又猛大片午夜 | 国产亚洲一区二区手机在线观看 | 亚洲一区二区三区丝袜| 亚洲视频在线观看不卡|