HTML:
<SCRIPT language="JavaScript">
      function addfile() {
          var str = '<input type="file" size="50" name="File">';
              document.getElementById('upLoad').insertAdjacentHTML("beforeEnd",str);
</SCRIPT>
<input id="upLoad" type="file" size="38" name="File" runat="server">
<INPUT id="addBtn" onclick="addfile();" type="button" value="增加">
请问我要实现多个文件上传的功能
这样写可以吗?
总是说网页上有错误
大家帮我看看
==================================================================================
我是一个刚入门c#菜鸟
而且身边没有人指点我,任务还很多
希望各位大侠不要认为我提的问题幼稚
知道的就帮我一下,谢谢

解决方案 »

  1.   

    <input id="upLoad" type="file" size="38" name="File" runat="server">
    改成
    <span id="upLoad"><input type="file" size="38" name="File" runat="server"></span>
      

  2.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=58EA3515-36F2-4FD9-AC89-EAF49F59816C<input>标签不能runat="server"
    看看原来的文章,哪里不一样就改回去吧,文章里的代码我试过,保证没问题
      

  3.   

    我照着那个改好了
    但是又有了新问题
    (1)为什么id只能定义为"MyFile"?
    (2)如果我想在创建了新控件后隐藏原来的空间,并使新的控件显示在原来控件的位置,应该怎么做?
    谢谢
      

  4.   

    1、id可以自定义,不一定是MyFile
    2、需要给每一个插入的<input标签起不同的Id,比如file1、file2……,并记录下总数(全局变量),单击按钮的时候把上一个标签设为不可见,并将总数增1,创建一个id为file+总数的新控件
      

  5.   

    <SCRIPT language="JavaScript">
                 var picCount=0;
                 var str="";
                 var newfilename="";
              function insertAtCaret(texte) {
                  var inputname="File" + picCount;
         texte.focus();
         newfilename=document.write(inputname + ".value")
                  document.selection.createRange().text=newfilename;
         picCount++;
         document.getElementById('MyFile').insertAdjacentHTML("AfterBegin","input type='file' size=38 id='" + inputname + "' name='" + inputname + "'" );
        }
    </SCRIPT>
    <p id="MyFile"><input type="file" size="38" name="File0" ></p>============================================================================
    请问我用这段代码实现楼上说的:给每一个插入的<input标签起不同的Id
    可以吗?
    这里面的功能是要插入一个文件域,赋不同的ID,之后得到没一个文件域的文件名
    再插入到一个文本框中
    现在提示的错误是:undefinedFile0.value
    请问用什么方法可以比较容易的得到每一个文件域的文件名?