簡體   English   中英

PHP填充下拉列表與ajax onchange問​​題IE Only

[英]PHP Populate dropdown with ajax onchange issue IE Only

我對這個問題感到非常興奮。 我只是試圖根據第一個使用jquery ajax的選擇來填充第二個下拉列表。 它適用於所有其他瀏覽器,包括Edge,而不是IE 11。

這是ajax函數

    function getProfiles(val) {
   $.ajax({
     cache: false,
     type: 'POST',
     url: 'ajaxDept.php?dept=' + val,
     data: {
       get_option:val
     },
     success: function (response) {
       document.getElementById("comboprofile").innerHTML=response; 
     }

   });
}

這是ajaxDept.php代碼

<?php
include('/inc/config.inc.php');

$dbAjax = new Database();
$dbAjax->connect();
$dbAjax->selectDB('cad');
$dept = $_GET['dept'];

$queryAjax = $dbAjax->SelectQuery("SELECT * FROM profile WHERE department='".$dept."' ORDER BY profile_prefix ASC");
foreach($queryAjax as $line)
{
    $prefix = $line['profile_prefix'];
    $profile = $prefix."-".$line['profile_name'];
    $department = $line['department'];
    echo "<option value='".$prefix."'>".$profile."</option>";
}
?>

和HTML部分

  <label class="description" for="comboDept">Department</label>
  <div>
    <select class="element select medium" id="comboDept" name="comboDept" onchange="getProfiles(this.value);">
      <option value="" selected="selected"></option>
      <?php echo $comboDept; ?>
    </select>
  </div>
</li>
<li id="li_13">
  <label class="description" for="comboprofile">Profile</label>
  <div>
    <select class="element select medium" id="comboprofile" name="comboprofile">

    </select>
  </div>
</li>

我用IE 11運行調試器,我得到200 / OK

這是IE看到的請求URL,這是正確的

請求網址: http://php/CAD/new/ajaxDept.php?dept = IT

當我瀏覽IE中的那個url並查看源代碼時,它會顯示帶有<option>標簽的正確html代碼。 它根本沒有填充我的下拉列表。

再次,在我嘗試過的每個其他瀏覽器中都能很好地工作,所以我不確定這實際上是一個jQuery / Ajax問題,或者是IE如何處理HTML響應。 任何幫助將不勝感激。

根據這篇文章 ,這可能是因為這一行:

document.getElementById("comboprofile").innerHTML=response;

由於您使用的是jQuery,因此您可以通過將該行替換為以下內容來繼續使用它:

$('#comboprofile').html(response);

謝謝Mikey,這就是修復。

$( '#comboprofile')HTML(響應);

這是最后的工作職能

function getProfiles(val) {
   $.ajax({
     cache: false,
     type: 'POST',
     url: 'ajaxDept.php?dept=' + val,
     data: {
       get_option:val
     },
     success: function (response) {
       $('#comboprofile').html(response); 
     }

   });
} 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM