J’ai lu quelques solutions à ce problème, mais aucune n’est simple, alors j’ai pensé qu’il existait peut-être une solution moderne pour remédier à cela. De toute façon, cela devrait être le cas, car le problème existe depuis un moment. Quelque chose dans les mises à jour jQuery les plus récentes peut-être bien?
Je règle mon champ de formulaire comme ceci:
parent.window.document.getElementById(parent.window.imageInputField).value = '{{ path }}'+image;
et j’ai un événement onchange comme celui-ci que je voudrais déclencher lors de la mise à jour sur le terrain ci-dessus.
$('#data_1').change(function(){ img = "url(" + $('#data_1').val() + ")" $('#slide_bg').css("backgroundImage", img ); });
METTRE À JOUR
donc ce code fonctionne bien:
alert( $('#'+parent.window.imageInputField, window.parent.document).val() );
alors que cela ne fait rien, aucune erreur ou rien
$('#'+parent.window.imageInputField, window.parent.document).change();
L’événement de changement est défini ici
$('#data_1').change(function(){ alert('change event called'); img = "url(" + $('#data_1').val() + ")" $('#slide_bg').css("backgroundImage", img ); });
et cela fonctionne parfaitement:
Tout ce que je veux, c’est déclencher ce que fait ce bouton, mais par code … quelqu’un voit où je me suis trompé?
vous devez déclencher le gestionnaire de changement avec votre code. La mise à jour d’une valeur avec un script ne déclenchera pas l’événement change
parent.window.document.getElementById(parent.window.imageInputField).value = '{{ path }}'+image; $('#data_1').change()