jQuery动态添加、删除按钮及input输入框

输入框的加减实现:

<html>
<head>
<meta charset="utf-8">
<title>动态创建按钮</title>
<script src='http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js'></script>
</head>
<body>
<a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" id="AddMoreFileBox" class="btn btn-info">添加更多的input输入框</a></span></p>
<div id="InputsWrapper">
<div><input type="text" name="mytext[]" id="field_1" value="Text 1"/><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="removeclass"><input type='button' value='删除'></a></div>
</div>
<script>
$(document).ready(function() {
var MaxInputs = 8; //maximum input boxes allowed
var InputsWrapper = $("#InputsWrapper"); //Input boxes wrapper ID
var AddButton = $("#AddMoreFileBox"); //Add button ID
var x = InputsWrapper.length; //initlal text box count
var FieldCount=1; //to keep track of text box added
$(AddButton).click(function (e) //on add input button click
{
if(x <= MaxInputs) //max input box allowed
{
FieldCount++; //text box added increment
//add input box
$(InputsWrapper).append('<div><input type="text" name="mytext[]" id="field_'+ FieldCount +'" value="Text '+ FieldCount +'"/><a href="#" rel="external nofollow" rel="external nofollow" rel="external nofollow" class="removeclass"><input type="button" value="删除"></a></div>');
x++; //text box increment
}
return false;
});
$("body").on("click",".removeclass", function(e){ //user click on remove text
if( x > 1 ) {
$(this).parent('div').remove(); //remove text box
x--; //decrement textbox
}
return false;
})
});
</script>
</body>
</html>

效果:

jQuery动态添加、删除按钮及input输入框

2、把上面的输入框的值ajax传回后台参考:

// 创建map,放入可变数量的输入框对组成的key-value
$("#opt_send").click(function(){
console.log(x);
var map = {}
for (var i = 1; i <= x; i++) {
var key = $("#field_1_" + i).val();
var value = $("#field_2_" + i ).val();
map[key]=value;
} // 使用JSON.stringify()方法解析,防止后台json数据显示[object Object]
var json= JSON.stringify(map);
jQuery.ajax({
url: "/test_tool/bizComponent.json",
type:"POST",
data: {
aa: $("#opt_aa").val(),
bb: $("#opt_bb").val(),
inputParameters: json
},
success: function(data){
if(data.success){ }else{ }
}
})
})
上一篇:'nmake' 不是内部或外部命令,VCVARS32.BAT路径问题


下一篇:Kafka 分区备份实战