如何在AJAX成功后通过jQuery添加类而不更改现有的AJAX代码?

时间:2016-08-25 09:06:47

标签: jquery

我想在AJAX成功之后的输入字段中添加一个jc类abc。但我无权更改AJAX中的任何代码。

2 个答案:

答案 0 :(得分:0)

您可以使用Deferred。当您的ajax完成后,请调用$ .when并在参数:

中发送您的ajax网址
$.when( $.ajax( "your_url.php" ) ).then(function( data, textStatus, jqXHR ) {
  alert( 'my ajax is done I can change the input class name here' );
});

如果要更改输入类名,可以在函数内执行此操作:

$('#myInputID').addClass('myNewClass');

答案 1 :(得分:0)

$.ajax返回jqXHR对象返回Promise对象,该对象可用于跟踪成功/失败回调。

  

jQuery 1.5中$ .ajax()返回的jqXHR对象实现了Promise接口,为它们提供了Promise的所有属性,方法和行为 - JQuery.ajax

JS代码:

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
  beforeSend: function( xhr ) {
      xhr.overrideMimeType( "text/plain; charset=x-user-defined" );
  }
}).
then(function( data, textStatus, jqXHR ) {
       //process when ajax succeeds
    }, 
    function( jqXHR, textStatus, errorThrown ) {
       //process when ajax fails
});