0

selectTextここから機能を使用しています https://stackoverflow.com/a/987376/784637

ただし、新しく作成された要素に対する ajax リクエストの直後にこの関数を呼び出した場合:

selectText('some-newly-added-element')

firebugで次のエラーが発生します

NS_ERROR_DOM_NOT_OBJECT_ERR: Parameter is not an object
[Break On This Error]   

range.selectNodeContents(text);

同じ要素に対する ajax リクエストの後にこの関数を呼び出すことができることに注意してください。

$('#container').on('click', '#some-newly-added-element', function(){
   selectText('some-newly-added-element');            
});

ajaxリクエストが完了した直後にこの関数を呼び出す方法はありますか?

4

2 に答える 2

1

Re:Is there a way to call this function immediately after the ajax request is done?

ajaxの成功後ということですかsuccessまたは http://api.jquery.com/jQuery.ajax/

またはこれが役立つはずです:すべてのajax .load()リクエストが終了した後に関数を実行します

これが原因に当てはまることを願っています:)

サンプル

$.ajax({
    url: this.html_url,
    cache: false,
    success: function(html){
        doSomething();
        return true;
    }
});
于 2012-10-13T09:15:23.037 に答える
1

completeajax呼び出し後にトリガーされるコールバックを使用する

  $.ajax({

  complete: function(){
       selectText('some-newly-added-element');
      }

   });

ajax イベントのドキュメント: http://docs.jquery.com/Ajax_Events

于 2012-10-13T09:15:56.090 に答える