upload
This commit is contained in:
parent
0c626b43d1
commit
342c2860b3
|
@ -0,0 +1 @@
|
|||
Subproject commit c5cbe7128fa23d7524fb13e47a067abd53f3e093
|
|
@ -1 +0,0 @@
|
|||
Subproject commit 4851a1ef486beefa6c1369fc075552d12ec19d8c
|
|
@ -0,0 +1,121 @@
|
|||
<HTML>
|
||||
<HEAD>
|
||||
<script type="text/javascript">
|
||||
var i = 0; // 用来动态生成span,upfile的id
|
||||
function addAttachmentToList()
|
||||
{
|
||||
if (findAttachment(event.srcElement.value)) return; //如果此文档已在图片列表中则不再添加
|
||||
|
||||
// 动态创建图片信息栏并添加到图片列表中
|
||||
var span = document.createElement('span');
|
||||
span.id = '_attachment' + i;
|
||||
span.innerHTML = extractFileName(event.srcElement.value) + ' <a href="javascript:delAttachment(' + (i++) + ')"><font color="blue">删除</font></a><br/>';
|
||||
span.title = event.srcElement.value;
|
||||
G('attachmentList').appendChild(span);
|
||||
|
||||
// 显示图片列表并变换添加图片按钮文本
|
||||
if (G('attachmentList').style.display == 'none')
|
||||
{
|
||||
G('btnAdd').value = '继续添加';
|
||||
G('attachmentList').style.display = '';
|
||||
G('btnClear').style.display = '';
|
||||
}
|
||||
|
||||
G('total').innerText = '当前选择上传'+ G('attachmentList').childNodes.length + '个图片';
|
||||
}
|
||||
|
||||
function selectAttachment()
|
||||
{
|
||||
// 先清除无效动态生成的多余upfile
|
||||
cleanInvalidUpfile();
|
||||
|
||||
// 动态创建上传控件并与span对应
|
||||
var upfile = '<input type="file" style="display:none" onchange="addAttachmentToList();" id="_upfile'+i+'">';
|
||||
document.body.insertAdjacentHTML('beforeEnd', upfile);
|
||||
G('_upfile'+i).click();
|
||||
}
|
||||
|
||||
function extractFileName(fn)
|
||||
{
|
||||
return fn.substr(fn.lastIndexOf('\\')+1);
|
||||
}
|
||||
|
||||
function findAttachment(fn)
|
||||
{
|
||||
var o = G('attachmentList').getElementsByTagName('span');
|
||||
for(var i=0;i<o.length;i++)
|
||||
if (o[i].title == fn) return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
function delAttachment(id)
|
||||
{
|
||||
G('attachmentList').removeChild(G('_attachment'+id));
|
||||
document.body.removeChild(G('_upfile'+id));
|
||||
|
||||
// 当图片列表为空则不显示并且变化添加图片按钮文本
|
||||
if (G('attachmentList').childNodes.length == 0)
|
||||
{
|
||||
G('btnAdd').value = '添加图片';
|
||||
G('attachmentList').style.display = 'none';
|
||||
G('btnClear').style.display = 'none';
|
||||
}
|
||||
|
||||
G('total').innerText = '当前选择上传'+ G('attachmentList').childNodes.length + '个图片';
|
||||
}
|
||||
|
||||
function cleanInvalidUpfile()
|
||||
{
|
||||
var o = document.body.getElementsByTagName('input');
|
||||
for(var i=o.length-1;i>=0;i--)
|
||||
if (o[i].type == 'file' && o[i].id.indexOf('_upfile') == 0)
|
||||
{
|
||||
if (!G('_attachment'+o[i].id.substr(7)))
|
||||
document.body.removeChild(o[i]);
|
||||
}
|
||||
}
|
||||
|
||||
function clearAttachment()
|
||||
{
|
||||
var o = G('attachmentList').childNodes;
|
||||
for(var i=o.length-1;i>=0;i--)
|
||||
G('attachmentList').removeChild(o[i]);
|
||||
|
||||
o = document.body.getElementsByTagName('input');
|
||||
for(var i=o.length-1;i>=0;i--)
|
||||
if (o[i].type == 'file' && o[i].id.indexOf('_upfile') == 0)
|
||||
{
|
||||
document.body.removeChild(o[i]);
|
||||
}
|
||||
|
||||
G('btnAdd').value = '添加图片';
|
||||
G('attachmentList').style.display = 'none';
|
||||
G('btnClear').style.display = 'none';
|
||||
G('total').innerText = '当前选择上传0个图片';
|
||||
|
||||
}
|
||||
|
||||
function getAttachmentInfo()
|
||||
{
|
||||
// 已知的js获取本地文件大小的三种方式
|
||||
|
||||
}
|
||||
|
||||
function G(id)
|
||||
{
|
||||
return document.getElementById(id);
|
||||
}
|
||||
</script>
|
||||
</HEAD>
|
||||
<BODY>
|
||||
<fieldset style="border:1px solid;text-align:left;FONT-SIZE:12px;font-family: Verdana;padding:5px;">
|
||||
<form action="#">
|
||||
<input type="button" value="添加图片" id="btnAdd" onclick="selectAttachment();">
|
||||
<input type="button" value="清空图片" id="btnClear" style="display:none" onclick="clearAttachment();">
|
||||
<div id="attachmentList" style="margin:3px 0px 0px 0px;padding:4px 3px 4px 3px;display:none;border:1px solid "></div>
|
||||
<div id="total" style="margin:3px 0px 0px 0px;">当前选择上传0个图片</div>
|
||||
<div style="padding:10px 3px"><input type="submit" value="上传"></div>
|
||||
</form>
|
||||
|
||||
</BODY>
|
||||
</HTML>
|
Loading…
Reference in New Issue