怎么隐藏下拉框的值

109588550 2015-06-12 08:39:11
假设 php网站中

引用
<select id="hangye" name="hangye">
<option value="0">请选择</option>
<option value="1">服务类</option>
<option value="2">制造类</option>
<option value="3">广告类</option>
</select>


如果在数据库中 有1 服务类 的记录

那么下次提交表单的时候 隐藏 <option value="1">服务类</option> 这条

怎么实现?
...全文
623 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
109588550 2015-06-16
  • 打赏
  • 举报
回复
引用 10 楼 fdipzone 的回复:
[quote=引用 6 楼 mf0916 的回复:] [quote=引用 5 楼 fdipzone 的回复:] 那更简单

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
$result里面就是已经存在的uid了。
输出为 Array 怎么解决[/quote] 数组输出当然是Array 这样你应该懂了吧。

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
 
?>
<select id="hangye" name="hangye">
<option value="0">请选择</option>
<?if(!in_array(1, $result)){?>
<option value="1">服务类</option>
<?}?>
<?if(!in_array(2, $result)){?>
<option value="2">制造类</option>
<?}?>
<?if(!in_array(3, $result)){?>
<option value="3">广告类</option>
<?}?>
</select>
[/quote] 懂了 好了 谢谢了
109588550 2015-06-15
  • 打赏
  • 举报
回复
引用 5 楼 fdipzone 的回复:
那更简单

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
$result里面就是已经存在的uid了。
输出为 Array 怎么解决
傲雪星枫 2015-06-15
  • 打赏
  • 举报
回复
引用 6 楼 mf0916 的回复:
[quote=引用 5 楼 fdipzone 的回复:] 那更简单

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
$result里面就是已经存在的uid了。
输出为 Array 怎么解决[/quote] 数组输出当然是Array 这样你应该懂了吧。

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
 
?>
<select id="hangye" name="hangye">
<option value="0">请选择</option>
<?if(!in_array(1, $result)){?>
<option value="1">服务类</option>
<?}?>
<?if(!in_array(2, $result)){?>
<option value="2">制造类</option>
<?}?>
<?if(!in_array(3, $result)){?>
<option value="3">广告类</option>
<?}?>
</select>
crazyday7 2015-06-15
  • 打赏
  • 举报
回复
把$result带进$exists答案不就出来了?
109588550 2015-06-15
  • 打赏
  • 举报
回复
引用 8 楼 crazyday7 的回复:
把$result带进$exists答案不就出来了?
不行的
109588550 2015-06-15
  • 打赏
  • 举报
回复
引用 5 楼 fdipzone 的回复:
那更简单

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
$result里面就是已经存在的uid了。
有不用 while循环 或者 while外部输出的办法吗
傲雪星枫 2015-06-14
  • 打赏
  • 举报
回复
那更简单

$query = mysql_query("select uid from TABLE") or die(mysql_error());
$result = array();
while($thread=mysql_fetch_assoc($query)){
    $result[] = $thread['uid'];
}
$result里面就是已经存在的uid了。
109588550 2015-06-14
  • 打赏
  • 举报
回复
引用 3 楼 fdipzone 的回复:
$result = mysql_query("SELECT * FROM uid",TABLE); from uid明显有问题 改为 $uid=xxx; // 要查询的uid $result = mysql_query("SELECT * FROM TABLE where uid='".$uid."'") or die(mysql_error()); 试试
我不是要查询一条信息 不是你楼上2楼说了吗 我想用这个办法取得 所有uid的数据 输出的结果是 2,8,9 这种类型的数组 再用in_array() 判断下拉框啊
傲雪星枫 2015-06-14
  • 打赏
  • 举报
回复
$result = mysql_query("SELECT * FROM uid",TABLE); from uid明显有问题 改为 $uid=xxx; // 要查询的uid $result = mysql_query("SELECT * FROM TABLE where uid='".$uid."'") or die(mysql_error()); 试试
109588550 2015-06-14
  • 打赏
  • 举报
回复
引用 1 楼 fdipzone 的回复:

<?php
$exists = array(1,2); // 这个表示从数据库中读取到已经有的记录。放到这个数组中,读数据库你自己写就可以了。

?>
<select id="hangye" name="hangye">
<option value="0">请选择</option>
<?if(!in_array(1, $exists)){?>
<option value="1">服务类</option>
<?}?>
<?if(!in_array(2, $exists)){?>
<option value="2">制造类</option>
<?}?>
<?if(!in_array(3, $exists)){?>
<option value="3">广告类</option>
<?}?>
</select>
你好聪明啊 我怎么都没想到 in_array() 函数 但是我怎么取值不出来? 假设我的数据表是 TABLE 其中有3条信息 id uid name 1 2 张三 2 8 李四 3 9 王二 $result = mysql_query("SELECT * FROM uid",TABLE); $row = mysql_num_rows($result); 输出$row不对
傲雪星枫 2015-06-13
  • 打赏
  • 举报
回复

<?php
$exists = array(1,2); // 这个表示从数据库中读取到已经有的记录。放到这个数组中,读数据库你自己写就可以了。

?>
<select id="hangye" name="hangye">
<option value="0">请选择</option>
<?if(!in_array(1, $exists)){?>
<option value="1">服务类</option>
<?}?>
<?if(!in_array(2, $exists)){?>
<option value="2">制造类</option>
<?}?>
<?if(!in_array(3, $exists)){?>
<option value="3">广告类</option>
<?}?>
</select>
资源下载链接为: https://pan.quark.cn/s/67c535f75d4c 关于Layui监听下拉框变化的问题,我之前一直以为只有当下拉框真正发生改变时,才会触发form.on('select(demo)', function(data) { console.log(data.value); })这个事件。然而,实际使用中发现,只要鼠标点击了下拉选项中的某个,无论这个是否与之前的相同,事件都会被触发。 为了解决这个问题,我采用了一种新的思路。首先,我在页面上添加了一个隐藏的input框,用来存储下拉框当前选中的value。这样做的目的是为了能够对比用户点击选项时的与之前存储的是否一致。具体实现步骤如下: 初始化隐藏input框:在页面加载时,将下拉框的初始选中给这个隐藏的input框。 监听下拉框点击事件:使用form.on('select(demo)', function(data) { ... })监听下拉框的点击事件。 对比是否改变:在事件触发时,获取当前点击的,并与隐藏input框中的进行对比。如果两者不同,说明发生了真正的改变,此时可以执行相应的逻辑操作;如果两者相同,则说明用户点击的与之前一致,可以选择忽略这次事件。 更新隐藏input框的:无论是否改变,最后都需要将当前点击的更新到隐藏input框中,以便下一次对比。 通过这种方式,我成功实现了只有当下拉框真正发生改变时才触发事件的效果,避免了因重复点击相同选项而导致的无效事件触发。

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧