Estoy tratando de establecer valores predeterminados en seleccionar.

Ajax:

$.ajax({
                type: "GET",
                url: "teachers/" + $(this).attr("value") + "/edit",
                dataType: 'json',
                success: function (data) {

    $('.qual_id option[value=' + data.qualifs + ']').attr('selected', true);
} 

Controlador:

public function edit($id)
    {
      $qualifs = DB::table('qualif_teachers')
      ->join ('qualifs','qualif_teachers.qualif_id','=','qualifs.id')
      ->where('teacher_id', '=' , $id)
      ->pluck('qualifs.id');

        return response()->json([
            'status' => 'success',
            'qualifs'=> $qualifs,
        ]);
    }

Vista:

<select class="form-control qual_id">
    <option value="">-Select Degree-</option>
    <option value="1">SSC</option>
    <option value="2">HSC</option>
    <option value="3">BBA</option>
    <option value="4">MBA</option>
</select>

Error:

Error de sintaxis, expresión no reconocida: opción .qual_id [valor = 1,2]

0
iMatti 30 oct. 2019 a las 00:01

1 respuesta

La mejor respuesta

Sin ser específico sobre el marco de javascript que está utilizando y sin conocer el formato de su respuesta ajax, esto funciona (asumiendo que defaultValue tiene el valor de su opción deseada):

var defaultValue = 1

$(`.qual_id option[value=${defaultValue}]`).attr('selected', true);

Aquí hay un violín de trabajo.

0
Ananda Masri 29 oct. 2019 a las 21:17