Ho un'opzione di selezione come sotto.
@foreach($destinations as $destination)
{!! Form::select("destination", $counts, $destination->ordering, array("onchange"=>"fetch_select(this.value,$destination->id)") !!}
@endforeach
Sto cercando di passare una variabile chiamata$ destination-> id nella funzione onchange come sopra, che in seguito attiva una funzione in java-script. Tuttavia, non sono in grado di passare questa variabile come ho fatto sopra. Genera molti errori Dice
Uncaught SyntaxError: Unexpected token >
nella console di ispezione.
Ho provato con:
"onchange"=>"fetch_select(this.value,destination->id)"
"onchange"=>"fetch_select(this.value,"$destination->id")"
"onchange"=>"fetch_select(this.value,(destination->id))"
"onchange"=>"fetch_select(this.value,($destination->id))"
Nessuno di loro funziona .. Come posso aggirare questo. Con Cordiali saluti
risposte:
0 per risposta № 1Il tuo codice sta trattando destinazione-> id come un letterale a causa delle citazioni singole. In realtà stai ottenendo il valore destinazione-> id passato come parametro alla funzione, e destinazione-> id non è javascript legale. Lo sta leggendo come destinazione meno maggiore di id, il che non ha senso
Provare
"fetch_select(this.value," . $destination->id . ")"
0 per risposta № 2
La funzione di selezione modulo non è chiusa, mancante), prova di seguito il codice per evitare errori di sintassi
{!! Form::select("destination", $counts, $destination->ordering, array("onchange"=>"fetch_select(this.value,$destination->id)")) !!}