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

353
Views
Ejecute una función después del éxito de $.ajax sin ponerla directamente en una devolución de llamada

Tengo esta función donde muchas partes de mi código la llaman.

 function test() { $.ajax({ url : url, type : 'GET', success : { verifyID(); verifyName(); verifyBlah(); } }); }

y tengo esta otra función:

 addProductCart(productID);

Antes de llamar a addProductCart() , necesito llamar a la función de prueba, pero otros procesos llaman a la función de prueba.

Me gustaría hacer esto:

 test() ---> if test ok (success) ----> addProductCart()

Pero no puedo configurar mi función (addProductCart) en la función de prueba de éxito porque, como dije, muchos otros procesos llaman a la función de prueba.

¿Cómo puedo hacer esto?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

¡Usa Promesas!

Devuelve una promesa de la función de test así:

 function test() { return $.ajax({ // <----- Notice the return statement here url : url, type : 'GET', success : { verifyID(); verifyName(); verifyBlah(); } }); }

Cuando necesite usar esta función para probar algo y ejecutar otra pieza de código cuando esto pase, puede hacer:

 test().then(function(data, textStatus){ //do thing 1 addProductCart() // you can use data or textStatus returned by your ajax function here too! }); test(someParam).then(function(data, textStatus){ // <--- You can even pass parameters to test function like here, and make it do different ajax call based on your param //do thing 2 });

Para obtener más detalles sobre cómo funciona esto, consulte los documentos de jQuery para $.ajax . función

Aquí hay un excelente tutorial sobre el concepto de Promesas de JavaScript para que pueda comenzar si no está familiarizado con ellas.

about 4 years ago · Santiago Trujillo 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!