我要上传文本文件内容,上传后按行显示在页面的select列表框内 
网上找了资料不能直接用js将文件内容写入文本框,必须得先用 
multipart/form-data提交到服务器,然后再做处理. 我想知道的是:如何将上传到服务器后的文本内容及时的写入前台的select列表框内 
也就是说,在用户点击"上传"的时候,一并将文本内容显示在select列表框内 我也想过用ajax可以将上传到服务器的文本内容在回显到select列表框 
但怎样判断文件已经上传完了,也就是如何做到上传完立马进行内容回显 ???? 大家有更好的方案没有啊,帮帮忙 !!!
--------------------------------------------------------------------------------------
问题补充: 
1. 提交上传和列表框应不属于同一个表单 
2. 回显到列表框后,其内容可能被删减 
3. 正式提交数据的时候还得以列表框最后的内容为准(参照1),这次提交又应该以什么方式?普通方式? 感觉这样绕了好大个圈子,我的目的其实很简单,就是让用户可以将本地文本内容 
显示在网页的select列表框内,并可让其删减条目.最后提交到服务器对列表框内容进行处理 大家帮帮忙!!!

解决方案 »

  1.   

    POST后的 callback 再AJAX请求一次文件内容.
      

  2.   

    请问 callback 是什么东西 ?
    它能告诉前台提交完毕 ?
    能否详细点,谢谢
      

  3.   

    ajax无刷新上传文件,使用iframe模仿你下载这个例子看看,在页面内多添加一个select,然后把回调函数改为向select 中添加option就得了
      

  4.   

     谢谢大家的回答3. 正式提交数据的时候还得以列表框最后的内容为准(参照1),这次提交又应该以什么方式?普通方式? 
    -----------------
    感觉这样绕了好大个圈子,我的目的其实很简单,就是让用户可以将本地文本内容 
    显示在网页的select列表框内,并可让其删减条目.最后提交到服务器对列表框内容进行处理 
    最后提交用普通方式?如果列表框内容太多,会不会不妥.必须按照上面的步骤来吗 ?有没有简单的方式,不能用js将文本内容读到select列表框里
      

  5.   

    3. 正式提交数据的时候还得以列表框最后的内容为准(参照1),这次提交又应该以什么方式?普通方式? 
    ---可以使用普通方式提交,如果想要无刷新,ajax或者隐藏的iframe都可以不过提交文件的话一定要隐藏的iframe,ajax无法提交文件
      

  6.   

    谢谢showbo的回答
    再问下,就不能直接用js将本地文件内容读到select列表框中(省掉上传文件和回显的步骤)
    然后直接提交(或ajax)到服务器进行处理 ? (因为数据内容显示到列表框后可以被用户删减,最后以列表框的当前内容为准,此时之前上传到服务器的文件已经毫无作用)说说你们的看法,拜托!
      

  7.   

    直接在客户端读客户端文件有权限问题的,一般不推荐这样做。如果你一定要这样做,可以参考acx之scripting.filesystemobject,不过仅ie能创建此对象data.txt,e盘根目录下的一个文件
    1234
    read.html
    <script>
    try{
      var fso=new ActiveXObject("scripting.filesystemobject"),txtStream;
      txtStream=fso.openTextFile('e:\\data.txt');//打开文件
      alert(txtStream.readAll())
      txtStream.close();
      fso=null;
    }catch(e){alert(e);}
    </script>