首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >交互式下拉菜单,可根据用户输入内容自动填充下拉值

交互式下拉菜单,可根据用户输入内容自动填充下拉值
EN

Stack Overflow用户
提问于 2018-05-16 00:10:00
回答 2查看 44关注 0票数 0

我正在尝试创建一个交互式下拉菜单,它使用mysqli查询来自动填充每个下拉菜单中的值。到目前为止,第一个下拉菜单echo是数据库中每个零件的品牌,所以它工作得很好。然而,第二个下拉列表显示,无论$selected值是真还是假,但当我选择一个品牌时,它也不会自动填充结果。

代码语言:javascript
复制
    <?php
            foreach($parts as $col) { ?>
                <dl>
                    <dt><?php echo $col?></dt>
                    <dd>
                        <select id="search_status" name="state" data-placeholder="State">
                            <?php
                           $brand = $database->fetch_col($col);
                           $selected = false;
                           ?>
                               <option value=""></option>
                            <?php foreach($brand as $b){ ?>
                               <option value="<?php $selected = true; ?>"><?php echo $b['Brand']; ?></option>
                            <?php }?>
                        </select>
                        <?php if($selected = true){
                            $item = $database->fetch_row($col, $b);
                            ?>
                        <select>
                            <option></option>.
                                   <?php foreach($item as $i) {?>
                                   <option><?php echo $i['Model']; ?></option>
                            <?php }?>
                        </select>
                        <?php
                        } else {
                            echo "Please select Brand";
                        }
                        ?>
                        <p><?php
                        echo var_dump($item);
                        ?><p>
                    </dd>
                </dl>
            <?php }?>

我相当确定它的$selected变量与表单的其余部分不对应。

EN

回答 2

Stack Overflow用户

发布于 2018-05-16 00:13:21

通过使用单个等号将$selected赋值为true -如果要将该值与true进行比较,则需要使用==或===。

http://php.net/manual/en/language.operators.comparison.php

票数 0
EN

Stack Overflow用户

发布于 2018-05-16 01:15:11

你可以用ajax做it.Here,我分享一些example.YOu可以从中找到你的解决方案…主页:

代码语言:javascript
复制
  <html>
<head>
<script>
function showHint(str) {
    if (str.length == 0) {
        document.getElementById("txtHint").innerHTML = "";
        return;
    } else {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {
                document.getElementById("txtHint").innerHTML = this.responseText;
            }
        };
        xmlhttp.open("POST", "ajax.php?q=" + str, true);
        xmlhttp.send();
    }
}
</script>
</head>
<body>
<form>
<input type="text" onkeyup="showHint(this.value)">
</form>
<p>Suggestions: <span id="txtHint"></span></p>
</body>
</html> 

AJax页面ajax.php

代码语言:javascript
复制
    <?php 
echo "ss";
?>


<!DOCTYPE html>
<html>
<head>
    <title></title>
</head>
<body>
<form method="POST">


<a href="signup.php">Sign up</a>
<a href="signup.php">Sign up</a> 
<a href="signup.php">Sign up</a> 
<a href="signup.php">Sign up</a> 
</form>
</body>
</html>

希望能对你有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50354785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档