Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

159
Vistas
opción de contexto $.ajax

El episodio 11 del podcast yayQuery menciona la opción de contexto $.ajax . ¿Cómo usaría esta opción en la devolución de llamada exitosa? Lo que estoy haciendo actualmente es devolver mis parámetros de entrada a la devolución de llamada exitosa para poder animar la identificación que se llamó después del éxito/error. Si uso la opción de contexto, quizás no tenga que devolver los parámetros de la rutina llamada.

En este ejemplo, vuelvo a pasar STATEID al campo de éxito para que el estado se elimine del DOM una vez que se haya eliminado de la base de datos:

 $('td.delete').click(function() { var confirm = window.confirm('Are you sure?'); if (confirm) { var StateID = $(this).parents('tr').attr('id'); $.ajax({ url: 'Remote/State.cfc', data: { method: 'Delete', 'StateID': StateID }, success: function(result) { if (result.MSG == '') { $('#' + result.STATEID).remove(); } else { $('#msg').text(result.MSG).addClass('err');; }; } }); } });
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Todo lo que hace el context es establecer el valor de this en las devoluciones de llamada.

Entonces, si está en un controlador de eventos y desea que this en las devoluciones de llamada sea el elemento que recibió el evento, haría lo siguiente:

 context:this, success:function() { // "this" is whatever the value was where this ajax call was made }

Si desea que sea de otro tipo, simplemente configúrelo y this se referirá a eso:

 context:{some:'value'}, success:function() { // "this" the object you passed alert( this.some ); // "value" }

En el código que agregó a la pregunta, podría usar StateID , pero en realidad no sería necesario ya que ya tiene acceso a esa variable.

 var StateID = $(this).parents('tr').attr('id'); $.ajax({ url: 'Remote/State.cfc' ,data: { method:'Delete' ,'StateID':StateID } ,context: StateID ,success: function(result){ alert(this); // the value of StateID alert(StateID); // same as above if (result.MSG == '') { $('#' + result.STATEID).remove(); } else { $('#msg').text(result.MSG).addClass('err');; }; } });
over 4 years ago · Santiago Trujillo Denunciar

0

Si establece la opción de contexto, entonces this en el éxito será lo que establezca como el valor para el context . Entonces, si pasa un objeto literal que contiene los nombres y valores de sus parámetros de entrada como contexto, entonces, si tiene éxito, podría usar this.param1 para obtener el valor de su primer parámetro de entrada.

Consulte los documentos de .ajax() para obtener más información.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda