J'ai un ancien site web avec JQuery 1.7 qui fonctionnait correctement jusqu'à il y a deux jours. Soudainement, certains de mes boutons ne fonctionnent plus et, après avoir cliqué dessus, j'obtiens cet avertissement dans la console :
La soumission du formulaire a été annulée car le formulaire n'est pas connecté
Le code derrière le clic ressemble à ceci :
this.handleExcelExporter = function(href, cols) {
var form = $('').attr('action', href);
$('input[name="layout"]', form).val(JSON.stringify(cols));
$('input[type="submit"]', form).click();
}
Il semble que Chrome 56 ne prend plus en charge ce type de code. N'est-ce pas ? Si oui, ma question est la suivante :
- Pourquoi cela s'est-il produit soudainement ? Sans aucun avertissement de dépréciation ?
- Quelle est la solution de contournement pour ce code ?
- Existe-t-il un moyen de forcer Chrome (ou d'autres navigateurs) à fonctionner comme avant sans modifier le code ?
P.S. Cela ne fonctionne pas non plus dans la dernière version de Firefox (sans aucun message). Cela ne fonctionne pas non plus dans IE 11.0 & Edge ! (tous deux sans aucun message)
0 votes
J'ai ajouté une correction dans la réponse acceptée pour correspondre au fait que le formulaire est un objet jQuery. Notez que cela affecte également le gestionnaire jQuery
.submit()
(en plus de la méthode.click()
ci-dessus indiquée).