如果使用jquery附加多个字段,则不会将它们发布到数组中

时间:2012-04-18 11:01:56

标签: php jquery html arrays forms

基本上,我有页面,静态html,代码:

<input type="text" name="exp[][from]" />
<input type="text" name="exp[][to]" />
<input type="text" name="exp[][position]" />
<input type="text" name="exp[][name]" />

在此输入字段之后,有一个按钮可添加更多字段,这些字段运行此jQuery代码:

    $(document).ready(function(){
    $('#addwork').click(function() {
        $(document.createElement('div')).html('<input type="text" name="exp[][from]" />\n<input type="text" name="exp[][to]" />\n<input type="text" name="exp[][position]"  />\n<input type="text" name="exp[][name]" />').appendTo('.cvs');
    });
});

问题是,如果我用jQuery添加一些字段,它们不会发布到数组(使用var_dump测试),但静态的是。我在静态HTML中测试并添加了更多字段,效果很好。

所以基本上,如果我追加输入字段,它们不会发布到数组,但是静态的是。

3 个答案:

答案 0 :(得分:0)

我试过一个示例代码,我可以使用var_dump获取附加项的值。所以请检查此代码

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script>
   $(document).ready(function(){
    $('#addwork').click(function() {
        $(document.createElement('div')).html('<input type="text" name="exp[][from]" />\n<input type="text" name="exp[][to]" />\n<input type="text" name="exp[][position]"  />\n<input type="text" name="exp[][name]" />').appendTo('.cvs');
    });
});

</script>
</head>
<form method="post">
<input type="text" name="exp[][from]" />
<input type="text" name="exp[][to]" />
<input type="text" name="exp[][position]" />
<input type="text" name="exp[][name]" />
<div class="cvs"></div>
<input type="submit" value="btn" name="btn"/>

<input type="button" value="add" id="addwork"/>
</form>
</html>

答案 1 :(得分:0)

$(document).ready(function() {
                    $('#addwork').click(function() {
                        $('.cvs').append(
                                '<div>'+
                                    '<input type="text" name="exp[][from]" /><br>'+
                                    '<input type="text" name="exp[][to]" /><br>'+
                                    '<input type="text" name="exp[][position]"  /><br>'+
                                    '<input type="text" name="exp[][name]" />'+
                                '</div>');
                        });
                });

答案 2 :(得分:0)

制作name属性的格式 EXP [INTEGER] [资讯] 这样你可以“分组”表单数据,但可能会产生大数组