从数据库中设置选定的值

I have the below code and I'm stuck finding solution for my problem. I want to select a value from a dropdown menu according on what the PHP result is.

<form>
    <select name="filter" id="filter">
        <option value="">Select</option>
        <option value="AT_001">AT_001</option>
        <option value="GG_001">GG_001</option>
    </select><br><br>
    <input type="text" name="name" id="name"><br><br>
    <input type="text" name="reference" id="reference"><br><br>
    <select name="gender" id="gender">
        <option value="Male">Male</option>
        <option value="Female">Female</option>
    </select>
</form>
$("#filter").change(function () {
    var id = $(this).val();
    $.ajax({
        url : "getdata.php",
        data : {
            "id" : id
        },
        type : "POST",
        dataType : "json",
        success : function(data) {
            console.log(data);
            $("#name").val(data.fname);
            $("#reference").val(data.reference);
            $("#gender").attr("", data.gender); // ????? <--
        }
    });
});
$id = $_POST['id'];    

$query = "SELECT fname, reference FROM tb_amity WHERE coc = '$id'";
$result = mysql_query($query);
while ($row = mysql_fetch_assoc($result)){
    echo json_encode($row);
}

You can use val() to set the selected option of a select element:

$("#gender").val(data.gender);

This is assuming that the data.gender value returned by your PHP is either 'Male' or 'Female'

First console what you are getting inside 'data.gender', if its value is present inside your options value then it works fine like:

$("#gender").val(data.gender);