当前位置: 代码迷 >> JavaScript >> 写一个input,点击button,然后再弹出input,该如何处理
  详细解决方案

写一个input,点击button,然后再弹出input,该如何处理

热度:316   发布时间:2013-10-15 16:47:37.0
写一个input,点击button,然后再弹出input



如上图
一个input,里面填写数字,旁边写一个button,当点击button的时候,就动态获取input里的值,如果input里填写3,就弹出3个input。
这个要怎么写?谁帮帮我?求代码。。。
input,butto

------解决方案--------------------
提供一个思路:
  点击按钮时获取用户输入的弹出数量,然后循环去构造 直接构造HTML 弹出来就行了

例如:
var input="<input type=\"text\">";
var html=""
for(int i=0;i<3;i++){
html+=input;

然后把该HTML赋值到页面显示的弹出层 
例如:$("#弹出层ID").html(html);
------解决方案--------------------
通过document.getElementById(id).value获取文本的值
之后通过for循环 createElement 和appendChild创建节点添加到对应的元素上试试
------解决方案--------------------
给你个参考。


<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<style type="text/css">

</style>
</head>
<body>
<div>
需要的层级:<input type="text" id="num" />
<input type="button" id="ok" value="确定" />
</div>
<div id="can" style="border:1px solid #CCC; display:none; width:300px;"></div>
<input type="button" id="submit" value="submit" />
<div id="show"></div>
</body>
</html>
<script type="text/javascript" src="../jquery-1.8.0.js"></script>
<script type="text/javascript">
$(function(){
$("#ok").bind("click", function(){
var num = parseInt($("#num").val());
var html = '';
for(var i=0; i<num; i++){
html += '<input type="text" /><br/>';
}
$("#can").html(html).css('display', 'block');
})
$("#submit").bind("click", function(){
var input = $("#can input:text");
var html = '';
for(var i=0, t=input.length; i<t; i++){
html += input[i].value+'; ';
}

$("#show").html(html);
})
})
</script>
  相关解决方案