在一个用html和PHP写的网页页面里想用JS实现这样一个效果

表单最初始的效果如下:在录入数据后,如果点击“是否继续录入”,则会出现效果如下:即多生成一组录入,继续点击则继续多生成。我设想的是所有录入都属于一个表单,最后可以一起提交... 表单最初始的效果如下:

在录入数据后,如果点击“是否继续录入”,则会出现效果如下:

即多生成一组录入,继续点击则继续多生成。
我设想的是所有录入都属于一个表单,最后可以一起提交,但是我这效果还没有实现,所以也不确定是否可行。
希望有朋友帮忙解决一下,数据的接收问题也希望被考虑。
不胜感激,必有重谢!!!
展开
 我来答
内的权势
推荐于2016-11-09 · TA获得超过349个赞
知道小有建树答主
回答量:367
采纳率:50%
帮助的人:274万
展开全部

可行啊,数据都存数组,然后提交数组给后台,比如你有5个,a[],b[],c[],d[],e[].<div>a,b,c,d,e</div>,你点继续录入,遍历div的html,然后创建div.html(前一个.html()),然后再append.最后依次遍历div,中的input,把相应元素的.value加入当各自的数组里。不就OK了么。、

 <body>
        <div class="form">
                <div class="form_temp">
                    <p>UserName:<input type="text" name="name"/></p>
                    <p>age:<input type="text" name="age"/></p>
                </div>
        </div>
        <div><button type="button" id="submit">提交</button><button type="button" id="add_new">添加新的</button></div>
    </body>
$(function () {
        $("#add_new").bind("click", function () {
            $(".form").append("<div class='form_temp'>" + $(".form_temp").html() + "</div>");
        });
 
        $("#submit").bind("click", function () {
            var names = [], ages = [];
            for (var i = 0; i < document.getElementsByName("name").length; i++) {
                names.push(document.getElementsByName("name")[i].value);
            }
 
            for (var j = 0; j < document.getElementsByName("age").length; j++) {
                ages.push(document.getElementsByName("age")[j].value);
            }
 
            $.ajax({
                url: "form.php",
                type: "post",
                data: { name: names, age: ages },
                success: function (data) {
                    alert(data);
                },
                error: function (err) {
                    alert(err.error);
                }
            });
        });
    });
 
</script>

php

<?php
   $names=$_POST["name"];
   $ages=$_POST["age"];
   $tt=array("names"=>$names,"ages"=>$ages);
   print_r(json_encode($tt));
?>
更多追问追答
追问

谢谢,多输入框实现了,但是结果好像有误,麻烦再指点一下。

代码和结果如图:




应该是没有全部提交,但是我看了代码,抱歉,确实没有发现哪里不对。

追答
你直接print_r(array_merge($names,$ages))看看呗,或者你分别打印$names或者$ages来看看。你用的什么编辑器啊,感觉多好看的。
凌晨六点整
2015-02-15 · TA获得超过140个赞
知道小有建树答主
回答量:309
采纳率:0%
帮助的人:152万
展开全部
你这操作完全不科学,我肯定填了东西就提交保存了,怎么不提交就要我填下一个表单。如果是我的话我会让他刷新重新填下一份内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式