我想为表单显示一定数量的输入标记;这应该取决于用户动态选择他们想要的项目数量。如何使用for循环动态呈现多个表单元素
例如,如果用户说他们想要3件物品。我想显示3个输入栏。
我不清楚进行此操作的最佳方法。例如,我能够确定他们从选择的选项有多少项选择:
$(".howmany").change(function(){
var value = $(this).val();
}
但什么是其后进行的正确方法;我是否动态呈现使用为每个选择的输入标签的确切数量:或者预先显示(但隐藏)所有输入标签并仅显示请求的输入标签的确切数量。
我将不胜感激它的一个例子。此刻我只能隐藏整个区域。例如:
var requests = $("#howmany").val();
if (reqeusts < 1){
$('#reqeusts').hide();
}
else {
$('#reqeusts').show();
}
但我显然需要能够显示个人窗体标签相应的用户选择的数字。
你好,我想感谢大家的答案。
我非常抱歉,但我忘了提到混淆的原因是输入的值是从数组函数动态提供的。
public function arrayValues()
{
return $selection = array(
'0' => 'none' ,' 1' => '1 item' ,' 2' => '2 item' ,' 3' =>' 3 item');
}
然后,我需要为每个选定的项目数渲染下面的输入选择标记之一。
<?php echo '
<select id="howmany" name="items[howmany]" />';
foreach ($arrayValues as $key => $value)
{
echo '<option value="' . $key .'">' . $value . '</option>';
}
echo'</select>';
?>
_but我显然需要能够相应地显示单个表单标签的数量用户selected._事实并非如此。你需要一个带有“输入”数量可变的“form”。 – melancia 2014-10-03 08:17:43
一个简单的'for loop'追加'inputs'就可以解决你的问题。 – melancia 2014-10-03 08:18:26
嗨MelancialUk。感谢您的答复。我认为问题比简单的for循环更复杂。我没有给出问题中的全部问题。我为错误道歉。需要动态呈现的输入标签是取决于向其馈送的数组值的选择标签。我修改了我原来的问题。我也会问,我的问题不会被下载。我认为这是一个复杂的问题 – 2014-10-03 08:52:17