Soumet un formulaire donn�
#include <IE.au3>
_IEFormSubmit ( ByRef $oObject [, $iWait = 1] )
$oObject | Variable objet InternetExplorer.Application, Form |
$iWait | [optionnel] Sp�cifie s'il faut attendre que la page soit charg�e avant de retourner 0 = Retourne imm�diatement, sans attendre que la page soit charg�e 1 = (par d�faut) Attendre que le chargement de la page soit termin� avant de retourner |
Succ�s: | Aucun retour. |
�chec: | Retourne 0 ou -1 et d�finit @error <> 0. |
@error: | 1 ($_IEStatus_GeneralError) - Erreur g�n�rale 2 ($_IEStatus_COMError) - Erreur COM dans une r�f�rence d'objet 3 ($_IEStatus_InvalidDataType) - Type de donn�es invalide 4 ($_IEStatus_InvalidObjectType) - Type d'objet invalide 6 ($_IEStatus_LoadWaitTimeout) - D�lai de chargement d�pass� 8 ($_IEStatus_AccessIsDenied) - Acc�s refus� 9 ($_IEStatus_ClientDisconnected) - Client d�connect� |
@extended: | Contient le nombre de param�tres invalides |
Pour de nombreux formulaires HTML, il n'est pas suffisant d'utiliser _IEFormSubmit() car il y a souvent du code JavaScript personnalis� li� � un �v�nement onClick pour son bouton Submit.
Dans ces cas, vous aurez besoin de simuler un clic sur le bouton Submit au lieu d'utiliser _IEFormSubmit(). Voir l'exemple relatif � l'action "click" de _IEAction() .
En outre, certains traitements de formulaires reposent sur la "valeur" du bouton submit qui est pass�e avec le reste des donn�es du formulaire (souvent quand il y a plusieurs boutons submit dans le formulaire et qu'ils sont con�us pour d�clencher des r�sultats diff�rents).
Cette fonction ne r�ussira pas pour une valeur de bouton submit pass�e. La solution est d'utiliser l'action �clic� de _IEAction() comme ci-dessus.
Si vous rencontrez des probl�mes avec l'appel automatique de _IELoadWait() appel�e par d�faut, mettez le param�tre $iWait � 0 et appelez _IELoadWait() � partir de votre script, en lui passant l'objet InternetExplorer.
_IEFormElementGetCollection, _IEFormElementGetObjByName, _IEFormGetCollection, _IEFormGetObjByName, _IEFormReset, _IELoadWait
; Ouvre une instance du navigateur avec le formulaire exemple, remplit un champ du formulaire et le soumet #include <IE.au3> Local $oIE = _IE_Example("form") Local $oForm = _IEFormGetObjByName($oIE, "ExampleForm") Local $oText = _IEFormElementGetObjByName($oForm, "textExample") _IEFormElementSetValue($oText, "Hey! It works!") Sleep(2000) _IEFormSubmit($oForm)
; Obtient une r�f�rence sur un �l�ment sp�cifique du formulaire et d�finit ses valeurs. ; Dans ce cas soumet une requ�te au moteur de recherche Google #include <IE.au3> Local $oIE = _IECreate("http://www.google.com") Local $oForm = _IEFormGetCollection($oIE, 0) Local $oQuery = _IEFormElementGetCollection($oForm, 4) _IEFormElementSetValue($oQuery, "AutoIt IE.au3") Sleep(2000) _IEFormSubmit($oForm)
; Obtient une r�f�rence sur un �l�ment du formulaire et d�finit ses valeurs. ; Appelez _IELoadWait manuellement si la fonction _IELoadWait �choue. #include <IE.au3> Local $oIE = _IECreate("http://www.google.com") Local $oForm = _IEFormGetCollection($oIE, 0) Local $oQuery = _IEFormElementGetCollection($oForm, 4) _IEFormElementSetValue($oQuery, "AutoIt IE.au3") _IEFormSubmit($oForm, 0) _IELoadWait($oIE)