Javascript AJAX将类添加到表单元格

Javascript AJAX将类添加到表单元格,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我的表格上有两个选择菜单:类型和类别。当用户从“类型”菜单中选择某个内容时,我希望它执行一个PHP脚本,该脚本查询数据库并返回所选类型的匹配类别列表,供用户在“类别”菜单中选择 这工作正常,但我现在想对其进行更新,以便将一个类添加到categoryGroup(“成功”或“错误”,取决于AJAX结果)。这是我的表格,有两个单元格: <div class="form-group"> <label for="title" class="control-label col-sm-3

我的表格上有两个选择菜单:类型和类别。当用户从“类型”菜单中选择某个内容时,我希望它执行一个PHP脚本,该脚本查询数据库并返回所选类型的匹配类别列表,供用户在“类别”菜单中选择

这工作正常,但我现在想对其进行更新,以便将一个类添加到categoryGroup(“成功”或“错误”,取决于AJAX结果)。这是我的表格,有两个单元格:

<div class="form-group">
  <label for="title" class="control-label col-sm-3">Type</label>
  <div class="input-group col-xs-8">
    <select class="form-control" name="type" id="type" onchange="getCategories(this.value)">
      <option value="" selected></option>
      <option value="Business">Business</option>
      <option value="Commercial">Commercial</option>
      <option value="Commercial Land">Commercial Land</option>
      <option value="Land">Land</option>
      <option value="Rental">Rental</option>
      <option value="Residential">Residential</option>
      <option value="Rural">Rural</option>
    </select>
  </div>
</div>

<div class="form-group" id="categoryGroup">
  <label for="title" class="control-label col-sm-3">Category</label>
  <div class="input-group col-xs-8" class="" id="categoryList">
    <select class="form-control" name="category" id="category">
      <option value="" selected></option>
    </select>
  </div>
</div>

类型
生意
商业的
商业用地
土地
租金
住宅的
乡村的
类别
下面是我的脚本,它用AJAX调用中的适当选项替换Category select菜单:

<script type="text/javascript">
  function getCategories(str) {
    if (str == "") {
      document.getElementById("categoryList").innerHTML = "";
      return;
    }
    if (window.XMLHttpRequest) { // code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp = new XMLHttpRequest();
    } else { // code for IE6, IE5
      xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }

    xmlhttp.onreadystatechange = function() {
      if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
        document.getElementById("categoryList").innerHTML = xmlhttp.responseText;
      }
    }

    xmlhttp.open("POST", "getPropertyCategories.php?type=" + str, true);
    xmlhttp.send();
  }
</script>

函数getCategories(str){
如果(str==“”){
document.getElementById(“categoryList”).innerHTML=“”;
返回;
}
if(window.XMLHttpRequest){//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}else{//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
document.getElementById(“categoryList”).innerHTML=xmlhttp.responseText;
}
}
open(“POST”,“getPropertyCategories.php?type=“+str,true”);
xmlhttp.send();
}

我不知道如何更新它以同时向categoryGroup id添加一个类,这非常基本,但我想您已经了解了它的要点:

 xmlhttp.onreadystatechange = function() {
     if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
         document.getElementById("categoryList").innerHTML = xmlhttp.responseText;
     }

     var status = xmlhttp.status == 200 ? 'success' : 'error'
     var group = document.getElementById("categoryGroup")
     group.classList.add(status)
}