2016-05-04 13 views
1

Ich benutze Laravel 5 und ich habe ein Update/Bearbeitungsformular, das eine Combobox enthält. Aber ich kann meinen Combobox-Wert nicht festlegen, abhängig davon, was in der Datenbank steht. Weißt du, wie man es macht? Hier
ist mein Controller:
Wie wird Combobox ausgewählten Wert in Laravel 5 gesetzt?

public function ubahsurat(Request $request) 
{ 
    Surat::where('nomor_surat', '=', $request['nomor_surat'])->update(
          ['id_jenis_surat' => $request['id_jenis_surat']], 

    return redirect('/'); 
} 

Dies ist die Ansicht:

<div class="col-sm-9"> 
     <select name="id_jenis_surat" class="form-control"> 
     <option></option> 
      @foreach($jenis_surat as $js) 
      <option value="{{ $js->id_jenis_surat }}" > {{ $js->jenis_surat }} </option> 
      @endforeach 
     </select> 
    </div> 

Antwort

3

Alles, was Sie tun müssen, festgelegt ist selected="selected" auf dem Elemente, das aktiv ist.

<option value="{{ $js->id_jenis_surat }}" {!! ($conditionForSelected ? "selected=\"selected\"" : "") !!}> {{ $js->jenis_surat }}</option> 

ersetzen $conditionForSelected mit was auch immer es ist, dass bestimmt, ob $js->id_jenis_surat das aktuelle Element ist, das ausgewählt wird.

Ihre Ansicht zeigt uns den Aktualisierungscode, nicht den Ansichtscode.

0

Sie können wie folgt tun:

<div class="col-sm-9"> 
    <select name="id_jenis_surat" class="form-control"> 
    <option></option> 
     @foreach($jenis_surat as $js) 
     <option value="{{ $js->id_jenis_surat }}" @if($combobox_value_from_database==$js->id_jenis_surat) selected="selected" @endif> {{ $js->jenis_surat }} </option> 
     @endforeach 
    </select> 

Hinweis: Ich möchte Sie ermutigen, Laravel Formular-Builder zu verwenden. So können Sie vermeiden, diese Art von Problemen zu behandeln.

+0

Sorry, was meinst du mit "$ value_from_database" – hendraspt

+1

Sie fragte in Ihrer Frage "Aber ich kann nicht festlegen, meine Combo-Box-Wert hängt davon ab, was in der Datenbank". Sie haben einen Wert in der Datenbank gespeichert? Und Sie möchten, dass dieser bestimmte Wert beim Bearbeiten ausgewählt wird, oder? Sie werden also alle Werte, die ausgefüllt werden müssen, in die Bearbeitungsfelder holen, einschließlich des Wertes der Combo-Box. Ich habe gerade eine Variable angegeben, um anzugeben, dass der Wert aus der Datenbank stammt, da uns die Daten, die Sie an die Ansicht senden, nicht zur Verfügung stehen. :-) sehe meine aktualisierte Antwort. hoffe das macht Sinn. – VipindasKS

+0

Bitte beachten Sie, dass das, was @ Jaw.sh tat, auch richtig und in kürzester Zeit ist. – VipindasKS

Verwandte Themen