0

我有一个 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 语句完成的?只是我的一些想法。

感谢帮助,谢谢

4

3 回答 3

1

只是做类似的事情

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。

于 2013-02-08T05:06:39.787 回答
1

你可以使用 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 捕捉正确的值

于 2013-02-08T05:37:21.073 回答
0

我会在那里嵌入一个 PHP 语句,说明如果下拉值等于其他值,则在下拉框下添加输入文本字段以供用户输入。

于 2013-02-08T05:05:39.753 回答