js及jquery实现动态的文件上传操作按钮的添加和删除

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js及jquery实现动态的文件上传操作按钮的添加和删除相关的知识,希望对你有一定的参考价值。

参考技术A 本文为大家介绍下使用js及jquery实现动态的文件上传操作按钮的添加和删除,具体示例如下,希望对大家有所帮助
javascript实现
代码如下:
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
XHTML
1.0
Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/>
<title>jquery文件上传</title>
<script
type="text/javascript"
src="jquery-1.7.2.js"></script>
<script
type="text/javascript">
var
addMore
=
function()

var
div
=
document.getElementById("div2");
var
br
=
document.createElement("br");
var
input
=
document.createElement("input");
var
button
=
document.createElement("input");

input.setAttribute("type",
"file");
button.setAttribute("type",
"button");
button.setAttribute("value",
"Remove");

button.onclick
=
function()

div.removeChild(br);
div.removeChild(input);
div.removeChild(button);


div.appendChild(br);
div.appendChild(input);
div.appendChild(button);

//节点的移动
//$(function()

//);
</script>
</head>

<body>
<div
id="div1">
<input
type="file"
id="upload"/>
<input
type="button"
id="btn"
value="more"
onclick="addMore();"/>
</div>
<div
id="div2"></div>
</body>

</html>

jquery实现
代码如下:
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
XHTML
1.0
Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
http-equiv="Content-Type"
content="text/html;
charset=utf-8"
/>
<title>jquery文件上传</title>
<title>jquery1</title>
<script
type="text/javascript"
src="jquery-1.7.2.js"></script>
<script
type="text/javascript">
/**
var
addMore
=
function()

var
div
=
document.getElementById("div2");
var
br
=
document.createElement("br");
var
input
=
document.createElement("input");
var
button
=
document.createElement("input");

input.setAttribute("type",
"file");
button.setAttribute("type",
"button");
button.setAttribute("value",
"Remove");

button.onclick
=
function()

div.removeChild(br);
div.removeChild(input);
div.removeChild(button);


div.appendChild(br);
div.appendChild(input);
div.appendChild(button);
**/
//jquery实现文件上传的按钮添加和删除
$(function()
$("input[type=button]").click(function()
var
br
=
$("<br>");
var
input
=
$("<input
type='file'/>");
var
button
=
$("<input
type='button'
value='Remove'/>");
$("#div1").append(br).append(input).append(button);

button.click(function()

br.remove();
input.remove();
button.remove();
);
);
);
</script>
</head>

<body>
<div
id="div1">
<input
type="file"
id="upload"/>
<input
type="button"
id="btn"
value="more"
onclick="addMore();"/>
</div>
<div
id="div2"></div>
</body>
</html>

JS或者jQuery怎么给动态添加的DOM元素绑定事件

楼下说得太简单了,估计提问者看不懂。

假设,你有以下DOM

<div id="dvTest">
    <div>在这下面加一个按钮</div>
</div>

然后你添加一个按钮,方法如下

function addButton()
    var $container = $("#dvTest");
    $container.append("<a href='javascript:;'>click me</a>");

然后,给刚加的按钮一个click事件

//你要先找到你加的这个按钮
$("#dvTest > a").click(function() alert('you clicked me') );
//或
$("#dvTest > a").unbind().on('click'), function() alert('you clicked me') );

我觉得你主要是jQuery的筛选器用得不够熟。你可以搜一下,大概看看。只要能找到控件,绑定事件都不叫事儿。

参考技术A 添加后再绑定事件。
或者用on来绑定

以上是关于js及jquery实现动态的文件上传操作按钮的添加和删除的主要内容,如果未能解决你的问题,请参考以下文章

jquery实现动态添加附件功能

input实现多文件上传及图片预览

jquery动态添加内容

JS或者jQuery怎么给动态添加的DOM元素绑定事件

jquery 多个 上传文件教程

几种js实现的动态多文件上传