This issue is currently blocked by the following issues:
- (optional bonus)
Please help with those issues to get this issue back on track!
Original Issue Description
I frequently run into this ajax error issue with Drupal. It happens in both Drupal 6 & 7.
An AJAX HTTP request terminated abnormally.
Debugging information follows.
It's easy to run into. It happens on any browser with or with out extensions. This is because it's the standard way of handling AJAX error in Drupal. If you submit a form, while an AJAX request is processing you receive the error.
To reproduce the error, enable a free tagging text field in a taxonomy which has a couple terms. Get the Ajax going by typing in the first couple letters of popular terms. While the Ajax request is going, submit the form.
This error is in-fact the intended purpose of Drupal and Drupal is throwing this error in Drupal 7 in the misc/drupal.js file via the Drupal.ajax.prototype.error = function (response, uri) in conjunction with Drupal.ajaxError = function (xmlhttp, uri).
In my opinion these alert boxes are a nuisance and something like console.log or watchdog would be a much better place to put these errors. Perhaps a flag should be added to indicate if the error is important or negligible. Since the form is always submitted afterwards, I would consider all these issues negligible. Should a submission with Ajax be required, it's best if perhaps the form waits until it's done or times out, otherwise it should submit it with out the ajax callback and then allow standard form validation to deal with the errors.
My problem with this error is that I mostly make E-Commerce sites with Drupal Commerce or Ubercart. Since these modules make heavy use of Ajax forms, it's very easy to run into this error. For the end user it's very confusing and they'll believe they are doing something wrong and it will scare customers away from purchasing items, thus reducing my conversion rate.
PASSED: [[SimpleTest]]: [MySQL] 41,590 pass(es).
[ View ]
PASSED: [[SimpleTest]]: [MySQL] 41,597 pass(es).
[ View ]