如何使所有的输入字段(与100+输入字段已经存在)在单一形式作为“需要”
How to make all input fields (with 100+ input fields existed already) in single form as "required"?
如标题所示。
我有一个简单的表单,大约有100个输入字段,我相信应该有一个替代的"快捷"方法来简单地输入所有100个字段。
是否有一种方法来生成这种大小的形式使用PHP或javascript ?
编辑:对不起,伙计们。我写得更清楚一点。我有一个关于将10页长的调查转换为网络形式的项目。结果,我最终得到了一个包含大约100个输入字段的表单。我希望通过使用jQuery, php或javascript使它们都是"必需的",而不改变一个所有元素(如将"必需"放入所有标签)。希望这能消除一些疑虑。
编辑2:我使用jotform来生成这个表单。我已经拿到表格了。所以我不是问如何产生,但如何改变这一点。谢谢。分为两部分:客户端和服务器端。
客户端
这是纯粹的,以使UI更易于使用,因为所有数据也必须在服务器上进行验证。但是让ui更容易使用是很重要的。方法如下:
钩子窗体的
submit
事件你循环通过表单的元素(在表单上的
elements
集合),并检查他们有一个非空白的value
(对于input type="text"
和textarea
),或者,在单选按钮的情况下,至少一个共享相同的name
有一个checked
属性,即true
。(你也说过,你有一组复选框,你需要至少一个被选中,所以这将类似于单选按钮的东西,虽然你必须分组他们不同,也许使用相同的CSS类,这是在每个input
作为className
可用。)如果您有任何您觉得没有充分填充的字段,则从事件处理程序返回
submit
的false
。理想情况下,你还可以向用户展示非常清晰的说明,告诉他们缺少什么。
大约有15000个"表单验证"插件可以帮助您完成此操作。HTML5现在也有一些通过标记的表单验证,但支持还没有达到你可以依赖的水平。
服务器端
当您收到表单时,您必须重新验证所有必需的信息是否存在,因为可以绕过客户端验证。当然,如何做到这一点取决于表单的内容,但变量将通过$_POST
(如果您的表单的method="POST"
)或$_GET
(如果它的method="GET"
)可用。如果表单将涉及更改任何内容,您自然会使用POST
。
这是在HTML5的帮助下完成的。试一试:
<input type="text" required="required" name="name" maxlength="5/>
<textarea required="required ... ></textarea>
等等……
然后在提交表单后使用PHP检查字段是否为空:
if(empty($_POST['name']))
$messages[] = 'Please provide a name';
所以强迫用户输入数据是HTML和PHP代码的结合。你也可以使用JavaScript,例如,如果字段仍然为空,用户正在尝试提交表单时发出警报。
编辑:我看到你编辑了这篇文章。你需要编写自己的控件,它可以生成输入、文本区域、选择……如:
public static function addControl($type, $name, $options, $required = false, $howMuch = 1)
{
if($required)
$required = 'required="required"';
$name = 'name="'.$name.'"';
$control = '';
$controls = '';
switch($type)
{
case 'input':
$options = 'value="'.$options.'";
$control = '<input type="text" '.$name.' '.$required.' '.$options.' />
break;
case ...:
}
if($howMuch > 1)
{
for($i = 1; $i < $howMuch; ++$i)
{
$controls .= $control;
}
}
else
{
$controls = $control;
}
self::$controls[] = $controls;
}
- 将输入字段中的文本提交到我的数据库,同时将其添加到我的列表中
- 而循环只设置php中输入字段中的第一个值
- 在输入字段中将最小金额设置为
- 如何在输入字段中的按钮的帮助下打开日历,该字段的类型为“=”;日期”;
- 如何在HTML输入字段中添加不可删除的后缀
- 互斥单选按钮和相应的输入字段
- 在IE9中的输入字段中输入焦点最近按钮
- 选中单选框时将属性添加到输入字段
- 当设置addFromAutocompleteOnly时,剩余文本将保留在输入字段中
- 我如何在数字插入中使用逗号,这样它就不会'不要破坏我的输入字段
- 在输入字段上有两个函数调用,一个在Blur上,一个不在Angular中
- 输入字段将't获取更新的值
- 如何选择多个输入字段并删除所需的属性
- 输入字段,只接受0到12之间的数字
- 单击鼠标,用MySQL数据填充html表单输入字段
- 使用jquery将输入字段转换为文本
- Model中的Typeahead返回空值以形成输入字段
- 如何从查询字符串中的输入字段发回文本
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 将值传递给jquery创建的输入字段