Alors je te remercie beaucoup pour cette documentation.
J'approche de plus en plus du but avec toutes vos informations mais je n'atteint toujours ce que je veux.
Nouveau problème : La technique de redéfinir la méthode __doPostBack en javascript me paraît la bonne mais j'ai un gros gros problème.
Dans mon IHM, j'utilise une DLL de navigation graphique qui m'insère déjà une redéfinition du __doPostBack dans la page générée côté serveur pour le client. Cette redéfinition est essentielle pour la navigation dans les onglets de mon IHM. Je vous donne la code généré :
1 2 3 4 5 6 7 8 9 10 11 12
| function __doPostBack(eventTarget, eventArgument) {
var theform;
if (window.navigator.appName.toLowerCase().indexOf("microsoft") > -1) {
theform = document.Form1;
}
else {
theform = document.forms["Form1"];
}
theform.__EVENTTARGET.value = eventTarget.split("$").join(":");
theform.__EVENTARGUMENT.value = eventArgument;
theform.submit();
} |
Du coup, je ne peux pas inséré un script dans ma page via un Page.RegisterClientScriptBlock qui redéfinit mon __doPostBack sinon je casse la navigation de mon IHM.
A titre informatif, la solution que je compte mettre en place est la suivante :
Intégrer l'évènement suivant pour mon bouton dans le PageLoad :
this._bEnvoyer.Attributes.Add("onclick", "disabled=true;");
Injecter le code Javascript suivant via le PageLoad et la fonction Page.RegisterClientScriptBlock :
1 2 3 4 5 6 7 8 9 10 11 12
| <script language="javascript" type="text/javascript">
var netPostBack = __doPostBack;
__doPostBack = EscapeHtml;
function EscapeHtml (eventTarget, eventArgument)
{
document.all.<nomBouton>.disabled = false;
return netPostBack (eventTarget, eventArgument);
}
</script> |
Comment puis-je faire pour combiner les deux corps des méthodes Javascript sachant que je n'ai pas la main sur la génération du code d'une des deux?
Partager