php 如何在修改页面中获取该用户在添加列表中复选框中选中的值
我从数据库中获取某一字段的值,如上,然后我用explode(',',$arr)把他转换成了数组,如下:Array([0]=>2[1]=>3[2]=>4[3]=>10[4]...
我从数据库中获取某一字段的值,如上,然后我用explode(',',$arr)把他转换成了数组,如下:
Array
(
[0] => 2
[1] => 3
[2] => 4
[3] => 10
[4] => 12
)
我要用这个数组中的值去比较另外一个表中的值 id,比如
Array
(
[0]=>Array
(
[id]=>1
[name]=>XXXX
)
[1]=>Array (
[id]=>2
[name]=>XXXX
)
[2]=>Array (
[id]=>3
[name]=>XXXX
)
...........
)
在页面循环获取该数组值的时候比较 如果循环到第二个表中某数组值的ID与第一个表中的值相等时,那么复选框默认选中<input name="departments[]" type="checkbox" value="" checked="checked"/>
如果没有 就不选中。
可能表达不是很清楚,请大神们帮帮忙解答一下,本人十分感谢,我用的是thinkphp框架 展开
Array
(
[0] => 2
[1] => 3
[2] => 4
[3] => 10
[4] => 12
)
我要用这个数组中的值去比较另外一个表中的值 id,比如
Array
(
[0]=>Array
(
[id]=>1
[name]=>XXXX
)
[1]=>Array (
[id]=>2
[name]=>XXXX
)
[2]=>Array (
[id]=>3
[name]=>XXXX
)
...........
)
在页面循环获取该数组值的时候比较 如果循环到第二个表中某数组值的ID与第一个表中的值相等时,那么复选框默认选中<input name="departments[]" type="checkbox" value="" checked="checked"/>
如果没有 就不选中。
可能表达不是很清楚,请大神们帮帮忙解答一下,本人十分感谢,我用的是thinkphp框架 展开
2个回答
展开全部
第一步:循环需要显示的checkbox选项
<?php foreach($list as $k =>数困族 $v);?>
<input name='keyword[]' value='<?php echo $v['id'];?>薯弊' type='checkbox'><?php echo $v['name'];?></input>;
<?php endforeach;?>
第二步:默认尺毕选中checkbox,JS(Juqery)添加
<?php foreach ($key_string as $v):?>
$("[name='keyword[]'][value=<?php echo $v;?>]").attr("checked","true");
<?php endforeach;?>
<?php foreach($list as $k =>数困族 $v);?>
<input name='keyword[]' value='<?php echo $v['id'];?>薯弊' type='checkbox'><?php echo $v['name'];?></input>;
<?php endforeach;?>
第二步:默认尺毕选中checkbox,JS(Juqery)添加
<?php foreach ($key_string as $v):?>
$("[name='keyword[]'][value=<?php echo $v;?>]").attr("checked","true");
<?php endforeach;?>
参考资料: 百度一下
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我就不按think的框架写了,我唯培哗把我大概思路写下,你参考参考吧
<?php
$new_array1 = array([0] => 2,[1] => 3,[2] => 4,[3] => 10,[4] => 12);//要选中目标(表1的已拆分的数组)
$array = array('1','2','3','4','5','6','7','8','9','10','指行11','12','13',);//表2的数组
foreach($array as $key=>$val)//循环表二的数组
{
if(in_array($val,$new_array1))//判断表中迟2的每一个数据是否存在表1的数组当中,php自带的in_array函数可以很方便
{
echo "<input type="checkbox" name="id" val=".$val." checked=checked>".$val;//在就显示选中
}
else
{
echo "<input type="checkbox" name="id" val=".$val.">".$val;//不在就不显示选中
}
}
?>
<?php
$new_array1 = array([0] => 2,[1] => 3,[2] => 4,[3] => 10,[4] => 12);//要选中目标(表1的已拆分的数组)
$array = array('1','2','3','4','5','6','7','8','9','10','指行11','12','13',);//表2的数组
foreach($array as $key=>$val)//循环表二的数组
{
if(in_array($val,$new_array1))//判断表中迟2的每一个数据是否存在表1的数组当中,php自带的in_array函数可以很方便
{
echo "<input type="checkbox" name="id" val=".$val." checked=checked>".$val;//在就显示选中
}
else
{
echo "<input type="checkbox" name="id" val=".$val.">".$val;//不在就不显示选中
}
}
?>
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询