查询不仅在IE上显示行

In my php class I created a method for concatenated select form (ajax call) Now I've a strange problem because in firefox, chrome and other browsers the method go well displaying the rows of my query select while in ie 8-9 no display rows but only a "white" window.

public function ShowCat_2( $idca2, $idca1 ) {

    // for edit function
    $where = "";
    if(isset($idca1)){ $where .= " idcat_1='$idca1'"; }
    if(isset($_POST['idcat_1'])) { $where .= " idcat_1='$_POST[idcat_1]'"; }

    // query    
    $this->db->result = $this->db->mysqli->query("SELECT * FROM cat_2 WHERE $where");
    $cat_2 = '<option value="0">Select</option>';

        while($row = $this->db->result->fetch_assoc()) {

            $cat_2 .= '<option value="' . $row['idcat_2'] . '"';

                if($idca2 == $row['idcat_2']){ $cat_2 .= ' selected'; } // for edit fun

            $cat_2 .= '>' . utf8_encode(ucfirst(strtolower($row['descr']))) . '</option>';

        }

    return $cat_2;
}

Can you tell me what could be the problem and how to solve? Thanks

Take a look at the page source. There may be a PHP warning / notice in there that's breaking the HTML code.