php - 更改选择取决于输入值

标签 php mysql select

在我的表单中,我有三个输入框和一个选择框,在选择框中只有三个值 John 、Matt 和 Lucy,但是选择框是完全自动的,它完全取决于它上面的 Input 和 input 有所有 datepicker 。

当第一个输入有值时,选择框的值应该是 John 之后,当第二个输入填写的值将是 Matt,最后 3 个输入也得到值,而不是选择应该是 Lucy 我的问题是,当输入有值时,如何在选择中从数据库中填充日期

            <form method="post" name="myform" class="compform" id="myform">
            <input type="hidden" name="UserName" value="<?php echo $_SESSION['UserName']; ?>" />
            <ul>
            <li>
              <p>Distribution Date:</p>
              <input type="text" name="DistributionDate" id="datepicker" value="" readonly />
            </li>
            <li>
              <p>Reback Date:</p>
              <input type="text" name="RebackDate" id="datepicker1" value="" readonly />
            </li>
            <li>
              <p>Final Date:</p>
              <input type="text" name="FinalDate" id="datepicker3" value="" readonly />
            </li>
            <li>
              <p>Worker:</p>
              <?php 
                            $sql = "SELECT workerid,name FROM crew where workerid<> 0 ORDER By PeopleID";
                            $result = mysql_query($sql);

                            echo "<select name='workerid' id='name'>";
                            while ($row = mysql_fetch_array($result)) 
                            {
            ?>
              <option <?php if($formId != '' && $res['workerid'] == $row['workerid']){  echo " selected='select' "; } ?> value='<?php echo $row['workerid']; ?>'><?php echo $row['name']; ?> </option>
              <?php         } 
                            echo "</select>";
                            ?>
            </li>

最佳答案

你必须使用 Ajax 并像这样为每个文本框使用 change 函数

示例 HTML

<input type="text" id="txt1"/>
<input type="text" id="txt2"/>
<input type="text" id="txt3"/>
<br>

<select id="select">
 <option>Lucy</option>
  <option>John</option>
  <option>Matt</option>
</select>

查询

 $("#txt1").change(function(e){
    if($("#txt2").val() == "" && $("#txt3").val() == "")
    {
        $("#select").find('option:contains("John")').attr('selected','selected'); 

    }

});

$("#txt2").change(function(e){
    if($("#txt3").val() == "")
    {
       $("#select").find('option').removeAttr("selected");
        $("#select").find('option:contains("Matt")').attr('selected','selected');
    }

});

$("#txt3").change(function(e){

       $("#select").find('option').removeAttr("selected");
        $("#select").find('option:contains("Lucy")').attr('selected','selected');


});

Demo

关于php - 更改选择取决于输入值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22035136/

相关文章:

php - 正则表达式 PHP 仅在未被引号包围时才匹配

php - 具有不同帐户的两个不同用户在 Twitter 上关注同一个人,并且数据库将相同的提要存储两次。如何避免?

c++ - TCP Recv 使用 select() 返回 1 字节读取

php - 准备好的选择语句无法获取计数

php - 是否有与 Rails 迁移等效的 PHP?

php - 如何将带有 CAST 函数的 SQL 转换为 Eloquent

MySQL SELECT 与多个相似行不同

sql - 如何获取 Postgres 中缺少某个标签的文章?

php - 人们注册时如何防止重复的用户名?

mysql查询优化where与inner join