我在html中有一个表单,它接受输入并进行一些计算。我想做的是有一个下拉菜单,其中有一些选项,但如果没有用户的选项,他们可以输入自己的选项。
对于这个例子,我们假设它取所有条目的总和:
<form action="action.php">
<input type="text" name="int1" value="1">
<select name="dropdown">
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="NULL">Other</option>
</select>
<input type="text" name="other" value="other">
<input type="submit" value="go">
</form>
我的想法是,它将使用下拉菜单,或者如果下拉菜单设置为其他,则使用"其他"输入。有没有一种方法可以在html中处理这个问题,或者用php中的if语句来处理这个问题?只是我的一些想法。
感谢帮助,感谢
只需做一些类似的事情
if (isset($_GET['dropdown'])
&& $_GET['dropdown'] == 'NULL'
&& isset($_GET['other'])
) {
$value = $_GET['other'];
}
elseif (isset($_GET['dropdown'])) {
$value = $_GET['dropdown'];
}
else {
// Something went wrong. Handle error
}
如果您正在寻找客户端解决方案,您也可以使用JavaScript提交表单,这样只有一个值会传递给PHP。
您可以使用jquery 执行类似的操作
<script src="http://code.jquery.com/jquery-latest.js"></script>
<html><body>
<form action="" method="POST">
<input type="text" name="int1" value="1">
<select name="dropdown" id="dropdown">
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="NULL">Other</option>
</select>
<input type="text" name="other" value="other" id="other">
<input type="submit" value="go">
</form>
</body></html>
<script>
$(document).ready(function(){
$("#other").hide();
$('#dropdown').change(function(){
if($(this).val()=='NULL'){
$("#other").show();
}
else{
$("#other").hide();
}
});
})
</script>
并使用php捕获正确的值
我会在那里嵌入一个PHP语句,说明如果下拉列表值等于其他值,那么在下拉框下添加输入文本字段以供用户输入。