There is actually a bug in the version of
jQuery used by QuickBase (
ver 1.7.2) which does effect chaining. With this bug chained AJAX requests will be sequenced correctly (ie though
then()) but data the promise returns is always the data returned by the first promise. The fix is to use
pipe() instead of
then(). Since
pipe() was deprecated in later versions of jQuery (
ver 1.8) I often resort to nesting (against my own advice to you).
See:
https://api.jquery.com/deferred.pipe/In any event jQuery is getting long in the tooth and you don't even need it any more as modern JavaScript now supports most of what jQuery does (eg querySelector, fetch API).