我有一个下拉列表和一个文本框。下拉列表中有动物名称。问题是在哪里,可能没有在下拉列表中选择的名称,所以当请求的名称没有退出时,用户应该在选中复选框后在文本框中键入他/她最喜欢的动物(当选中复选框时,下拉列表应该被禁用,未选中时应禁用复选框)。在最后一步中,将下拉列表或文本框的值发送到数据库。
<form name="f" action="" method="post">
echo"choose an animal".'<br/>';
echo '<select name="animals">';
echo'<option> bear </option>';
echo'<option> cat </option>';
echo'<option> lion </option>';
echo'<option> monkey </option>';
echo'</select>';
echo"or write if is not in list".'<br/>';
echo'<input type="checkbox" name="checkbox">';
echo'<input type="textbox" name="animals">';
echo'<input type="submit" name="submit" value="submit">';
</form>
if(isset($_POST['submit']))
{
$db_host = 'localhost';
$db_name= 'site';
$db_table= 'animals';
$db_user = 'root';
$db_pass = '';
$con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده");
$selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده");
$ins = "INSERT INTO $db_table (animal_name)
VALUES ('" . mysql_escape_string($_POST['animals']) . "')";
$saved=mysql_query($ins );
mysql_close($con);
}
答案 0 :(得分:5)
<?php
echo"choose an animal".'<br/>';
echo '<select name="animals" id="animalDropdown">';
echo'<option> bear </option>';
echo'<option> cat </option>';
echo'<option> lion </option>';
echo'<option> monkey </option>';
echo'</select>';
echo"or write if is not in list".'<br/>';
echo'<input type="checkbox" name="checkbox" id="checkbox" onclick="onClickCheckbox()">';
echo'<input type="textbox" name="animalstext" id="animals">';
?>
<script>
onClickCheckbox();
function onClickCheckbox( )
{
if( document.getElementById("checkbox").checked == true )
{
document.getElementById("animalDropdown").disabled = true;
document.getElementById("animals").disabled = false;
}
else
{
document.getElementById("animalDropdown").disabled = false;
document.getElementById("animals").disabled = true;
}
}
</script>
这是主动/非主动作业。使用其余的PHP代码将数据插入数据库。顺便说一下,我猜你也需要一个提交按钮。
答案 1 :(得分:0)
使用checked属性启用或禁用给定字段。
<script>
function onClickCheckbox( )
{
if( document.getElementById("checkbox").checked == true )
document.getElementById("animalDropdown").disabled = true;
else
document.getElementById("animalDropdown").disabled = false;
}
</script>
<select name="animalDropdown"> ... </select>
<input type="checkbox" id="checkbox" onclick="onClickCheckbox()" value="1" checked="" />
不要为两个不同的输入使用相同的ID或名称。使用PHP脚本来区分这两者。