我有这个下拉列表,我的想法是当我点击我禁用其他下拉列表的视频时。这不起作用。我还需要别的吗?
<select name="Type" id="type">
<option value="0">Please Select</option>
<option name="image" value="I" >Images</option>
<option name="video "value="V">Videos</option>
<?php
$value=$_POST['image'];
?>
</select>
<select id="text-one" <?php if($value=="V"){ ?> disabled="disabled"<?php }?> >
<option selected value="base">Please Select</option>
<option value="Dig">Digital</option>
</select
答案 0 :(得分:2)
您可以使用PHP执行此操作,但这需要提交表单数据,以便您可以访问$_POST
,然后加载新页面,该页面与原始页面基本相同,只需使用text-one禁用。
请记住,PHP运行服务器端,一旦它在浏览器中呈现,其他任何东西都无法通过PHP完成。例如,您的示例代码中有一行显示您要将$_POST['image']
分配给$value
- 在您提交表单之前,$_POST
将为空。
最有可能的是,您希望在没有重新加载的情况下执行此客户端,这可以使用javascript完成。
作为基本概述:
onChange
选择元素的type
事件处理程序type
select元素的值,并根据需要在disabled
上设置text-one
属性另一个选择(可能更简单?):
将onclick
属性附加到视频输入,该属性将运行禁用text-one
的javascript函数
jQuery会使其中的一些变得更容易,但您可以使用普通的javascript编写上述所有内容,而无需任何库。
答案 1 :(得分:2)
试试这段代码:
<script>
function disable(val)
{
if(val=="V")
document.getElementById("text-one").disabled=true;
else
document.getElementById("text-one").disabled=false;
}
</script>
<select name="Type" id="type" onchange="disable(this.value)">
<option value="0">Please Select</option>
<option name="image" value="I" >Images</option>
<option name="video "value="V">Videos</option>
</select>
<select id="text-one" >
<option selected value="base">Please Select</option>
<option value="Dig">Digital</option>
</select>