balise d'entrée InvokeMember(“Clic”) pas de tir de l'événement onclick dans le navigateur web
Je suis en utilisant Dotnet Navigateur Web, cliquez sur un Élément d'Entrée - Bouton. Lors de cet événement click est déclenché, il exerce une fonction JS, ce qui génère captcha à l'aide de Google Recaptcher, source de ce qui ressemble à Recaptcha lien.
Maintenant la question est que je suis incapables de tirer l'événement onClick, je suis en utilisant le code suivant:
HtmlElementCollection inputColl = HTMLDoc.GetElementsByTagName("input");
foreach (HtmlElement inputTag in inputColl)
{
string valueAttribute = inputTag.GetAttribute("value");
if (valueAttribute.ToLower() == "sign up")
{
inputTag.Focus();
inputTag.InvokeMember("Click");
break;
}
}
J'ai tout vérifié, je suis attraper le bouton de droite, mais je ne sais pas pourquoi l'événement onClick n'est pas de se faire licencier.
Toute suggestion est la bienvenue.
- Votre code fonctionne pour moi. Est-il possible que ce code s'exécute avant que le document est prêt dans le navigateur de contrôle.
- Non, le document est chargé complètement, je suis en mesure d'obtenir l'Élément que je veux, j'ai débogué et vérifié, je suis capable de l'attraper. Mais quand je clique sur le bouton rien ne se passe, je suppose que son cliquez sur l'événement n'est pas déclenché, alors que quand je le fais manuellement sur Navigateur Web, il obtient cliqué.
- Où mettez-vous le code? Assurez-vous qu'il est appelé après le document est entièrement chargé. Et notez que, OnDocumentCompleted du contrôle webbrowser généralement invoquer deux fois, afin de vérifier l'État de la webbrowser aussi pour s'assurer qu'il est effectivement terminée.
- Pouvez-vous ajouter d'repro code?
- Tout d'abord cliquez sur est dans de petits cas et vous devez obtenir certains d'erreur si vous n'avez pas désactivé les erreurs de script.
Vous devez vous connecter pour publier un commentaire.
Regarder le fixe exemple ci-dessous:
Cela devrait fonctionner pour vous. Je l'ai testé sur des Ancres et des DIvs qui contiennent l'événement onclick.
Je n'ai pas pu ouvrir le lien pour voir le code, donc je n'ai pas l'essayer sur votre cas particulier.
De toute façon, si cela ne fonctionne pas, peut la BALISE conteneur est inséré dans une Forme, dans ce cas, vous avez à feu l'événement submit du formulaire, pas de tir à l'cliquer sur le sorm bouton "soumettre".
De toute façon, que votre code fonctionne aussi bien si vous appelez "cliquez sur" comme des minuscules ( je n'ai vraiment pas de vérifier, juste deviner, écrou en C# de l'affaire!).
PS: Voir Webbrowser: le séquençage des activités lorsque aucune DocumentCompleted est tiré par un lien sur la page web hébergée pour certains intéressant de code pour vous cas, j'espère que ça aide et quelqu'un peut-il m'aide en retour!
Êtes-vous sûr que le "Clic" est le nom exact? J'ai quelques presque identiques code, de faire exactement la même chose, et le nom de l'attribut "onclick". Avoir un autre regard sur le code HTML de la page.
Essayer
Il suffit de jouer avec les conditions, vérifiez si vous avez le bon bouton. BTW, boîtier de petit "clic" sur InvokeMember. C'est ce que j'utilise, et cela fonctionne pour moi.
Que vous avez déjà l'objet, essayez d'envoyer le
ENTER
clés comme ceci: