Javascript 如何使用for循环动态呈现多个表单元素

Javascript 如何使用for循环动态呈现多个表单元素,javascript,forms,for-loop,show-hide,Javascript,Forms,For Loop,Show Hide,我想为一个表单显示一定数量的输入标签;这应取决于用户动态选择所需项目的数量 <?php echo ' <select id="howmany" name="items[howmany]" />'; foreach ($arrayValues as $key => $value) {

我想为一个表单显示一定数量的输入标签;这应取决于用户动态选择所需项目的数量

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
例如,如果用户说他们想要3个项目。我想显示3个输入栏

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
我不清楚进行这项工作的最佳方式。例如,我可以确定他们从选择选项中选择了多少项:

 $(".howmany").change(function(){

            var value  = $(this).val(); 

}
                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
但此后的正确做法是什么;我是否为每个:动态呈现使用选择的输入标记的确切数量,或预显示(但隐藏)所有输入标记,并仅显示请求的输入标记的确切数量

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
我希望能举一个例子来说明它是如何做到的。目前我只能隐藏整个区域。例如:

var requests =  $("#howmany").val();

        if (reqeusts < 1){
            $('#reqeusts').hide();
        }
        else {
           $('#reqeusts').show();
       }
                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
然后,我需要为每个选定的项目数呈现以下输入选择标记之一

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>

$(“.howmount”).change(函数(){
var value=$(this).val();//获取输入的数量
value=parseInt(value);//确保它是整数
htmlStr=“”;
对于(变量i=0;i
您需要这样的东西:

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>
$('button').click(function () {
    $('div').empty().append(new Array(+$('input[type=number]').val()+1)
   .join("<input type='text' placeholder='Type Something'/>"));
});
$(“按钮”)。单击(函数(){
$('div').empty().append(新数组(+$('input[type=number]).val()+1)
.加入(“”);
});
我希望这能让你知道如何解决你的问题

                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>

但我显然需要能够根据用户选择的数字显示各个表单标签。不是真的。您需要一个带有可变数量的
输入的
表单。一个简单的
for循环
附加
输入
可以很好地解决您的问题。你好,MelancialUk。谢谢您的回复。我认为问题比简单的for循环更复杂。我没有给出问题的全部内容。我对错误表示歉意。需要动态呈现的输入标记是select标记,它们依赖于提供给它们的数组值。我已修改了我的原始问题。我还要求不要下载我的问题。我很抱歉k这是一个复杂的问题嗨,阿米特。非常感谢你的帮助。我现在正在看。我忘了提到我需要用数组值填充输入标记。我已经更正了我上面的问题。我认为现在的问题是如何将这些数组值填充到你的等式中
                    <?php echo ' 
                    <select id="howmany" name="items[howmany]"  />'; 


                    foreach ($arrayValues as $key => $value)
                    {       
                        echo '<option value="' . $key .'">' . $value . '</option>';
                    }
                    echo'</select>'; 
                    ?>