Javascript 25个HTML字段-不同用户级别的不同字段?
所以我有25个HTML字段(文本、下拉列表、选择等等) 我需要根据级别向用户显示这些内容,有些可能会显示,有些可能不会,到目前为止,我提出的唯一选项是在加载字段之前使用if语句检查用户级别,例如:Javascript 25个HTML字段-不同用户级别的不同字段?,javascript,php,forms,http-post,Javascript,Php,Forms,Http Post,所以我有25个HTML字段(文本、下拉列表、选择等等) 我需要根据级别向用户显示这些内容,有些可能会显示,有些可能不会,到目前为止,我提出的唯一选项是在加载字段之前使用if语句检查用户级别,例如: if(userLevel == 1 || userLevel == 2){ echo("<input type='text' name='phoneNumber'/>"); if(userLevel==1 | | userLevel==2){ 回声(“”); 但是,在我这样做之后,代码
if(userLevel == 1 || userLevel == 2){
echo("<input type='text' name='phoneNumber'/>");
if(userLevel==1 | | userLevel==2){
回声(“”);
但是,在我这样做之后,代码会变得非常冗长和混乱,有没有办法给每个字段指定某种ID,并根据用户级别加载具有特定ID的字段
JS字段验证也是如此,无论如何,要给每个字段id(如电子邮件、url),使其自动得到验证,而不是在每个字段上编写和调用一次更改?有很多方法 对于快速解决方案,您可以使用数组和For循环,例如:
function dumpForm($userLevel) {
$fields = array(
'name' => array(
'type' => 'text',
'level' => 2,
'value' => ''
),
'phone' => array(
'type' => 'text',
'level' => 1,
'value' => ''
),
'email' => array(
'type' => 'text',
'level' => 1,
'value' => 'email@example.org'
)
);
foreach ($fields as $name => $data) {
extract($data);
if ($level <= $userLevel)
echo "<input type='$type' name='$name' value='$value'/>\n";
}
}
echo "\nForm (level 1):\n";
dumpForm(1);
echo "\nForm (level 2):\n";
dumpForm(2);
函数dumpForm($userLevel){
$fields=数组(
'name'=>数组(
'类型'=>'文本',
“级别”=>2,
“值”=>“
),
'电话'=>阵列(
'类型'=>'文本',
“级别”=>1,
“值”=>“
),
'电子邮件'=>数组(
'类型'=>'文本',
“级别”=>1,
'值'=>'email@example.org'
)
);
foreach($name=>$data形式的字段){
提取(数据);
如果($level“是否有任何方法根据用户级别为每个字段指定某种ID和页面加载,并加载具有特定ID的字段?”--我相信你还必须检查用户级别的条件,并调用必要的代码块。是的,我讨厌为此构建html表单,这太单调了。我还喜欢返回字段w phpvalue=“”
,以防用户遗漏了一些内容,他们不必重新键入所有内容。