Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

234
Views
¿Cómo usar la matriz de cuchillas (agregada por javascript) usando un archivo js separado?

Tengo una función javascript como esta:

 function addRow(){ $('#mainbody').append('<tr>' + '<td><select class="form-control" name="addmore['+i+'][name]" id="name'+i+'" required >' + '<option disabled="disabled" selected="selected" value="" >Select Product</option>' + '@foreach($produk as $pro)' + '<option value="{{$pro->id}}">{{$pro->nama}}</option>' + '@endforeach' )}

Cuando uso el script en el mismo archivo blade (vista), funciona, pero cuando separo la función javascript e incluyo el script en el encabezado, muestra la sintaxis blade literalmente como {{ $pro->id }} (no el número real del controlador, pero agrega una nueva fila con {{ $pro->name }} como valor).

Entonces mi pregunta es, ¿puedo crear un archivo separado para mi función javascript? Debido a que estoy usando el script en la vista de creación y edición, quiero que mi vista sea más limpia.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

El motor de plantillas de Laravel no puede compilar archivos javascript, pero puede escribir su código javascript dentro del archivo blade. agregue su secuencia de comandos dentro de la hoja, coloque sus datos en formato json variable y luego haga un bucle para cada uno de los elementos que desee

Prueba este ejemplo.blade.php

 <script type="text/javascript"> let produk = {!! json_encode($produk) !!}; function addRow(){ var tr = $('<tr></tr>'); var select = $(`<select class="form-control" name="addmore[]" required ></select>`); for(const pro in produk) { var td = $(`<option value="${ pro->id }">${ $pro->name }</option>`); select.append(td); } tr.append(select); $('#mainbody').append(tr); } </script>
about 4 years ago · Juan Pablo Isaza Report

0

Debe asignar la variable js de la variable $produk cuando se haya iniciado este archivo blade.

El siguiente código puede representar los datos $produk en la variable de tipo de datos JS const.

 const produk = @json($produk)

Entonces puedes hacer foreach dentro de la etiqueta de select

 produk.forEach(element => { // ...use `element`... });
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!