使用AJAX根据选择填充表单字段


Using AJAX to fill form fields based on selection

所以我很难弄清楚如何完成这项工作。我将简要地解释发生了什么和需要发生什么。首先,用户可以在数据库中添加patiënts(目前只能添加名、姓、年龄等)。. 这是已经工作,但现在我想要的dokter能够搜索数据库基于"配置文件"字段的某个patiënt为了寻找类似的病人。我有一个下拉菜单,显示这个dokter添加的病人(mypipatients)每当他从下拉菜单中选择其中一个病人时,字段就会根据那个选择更新。这是我现在的代码:

—这是我运行的php,用于在下拉字段中添加用户(myppatients—函数选择用户名与当前登录的dokters用户名相同的所有患者):

<?php
session_start();
include_once("classes/Db.class.php");
include_once("classes/Patient.class.php");

if(!isset($_SESSION['username']))
{
   header("Location: login.php");
}
$patient = new Patient();
$patient->Dokter = $_SESSION['username'];
$results = $patient->MyPatients();
?>

——这是搜索表单(includesearch.php)

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" class="form-horizontal" role="form">
<div class="form-group">
  <label class="col-lg-2 control-label">Mijn Patiënt</label>
  <div class="col-lg-2">
    <select name="selectedpatient" class="form-control">
      <option value"" disable selected>&nbsp;</option>
      '<?php 
      while($r = $results->fetch_assoc()){
        echo "<option>". $r["firstname"] . " " . $r["lastname"] . "</option>";
      }
      ?>
    </select>
  </div>
</div>

<!-- SCRIPT FOR DATEPICKER -->
<div class="form-group">
  <label class="col-lg-2 control-label">Leeftijd</label>
  <div class="col-lg-5">
    <input id="age" name="age" type="text" class="form-control" placeholder="age">
</div>
</div>
 <div class="form-group">
  <label class="col-lg-2 control-label">Language</label>
  <div class="col-lg-5">
    <label class="checkbox-inline">
      <input type="checkbox" id="inlineCheckbox1" value="nl"> NL
    </label>
    <label class="checkbox-inline">
      <input type="checkbox" id="inlineCheckbox2" value="fr"> FR
    </label>
    <label class="checkbox-inline">
      <input type="checkbox" id="inlineCheckbox3" value="en"> EN
    </label>
  </div>
</div>
 <div class="form-group">
  <label class="col-lg-2 control-label">Profession</label>
  <div class="col-lg-2">
    <select name="profession" class="form-control">
      <option value"" disable selected>&nbsp;</option>
      <option value="jobless">Without a job</option>
      <option value="selfemployed">Selfemployed</option>
      <option value="student">Student</option>
    </select>
  </div>
</div>
</form>

我已经尝试使用ajax与文档。

  1. 你需要一个php,当病人id被发布时返回病人的详细信息
  2. 比添加onchange为您的selectedpatient选择框,它使用ajax张贴病人id到这个php你刚刚创建。
  3. 患者id可以作为选择框中选项的值添加。
  4. 最后,你需要为ajax添加一个成功回调函数,它使用javascript将配置文件信息填充到html表单