2010-04-28 5 views
1

Cela a été ajouté à la page plus tard avec jQuery:Impossible de sélectionner le bouton radio qui a été ajoutée par JavaScript watir

<input name="pdfRadio" id="pdfRadioNo0" value="0" type="radio"> 

Ce code:

radio_id = "pdfRadioNo0" 
ie.radio(:id, radio_id).set() 

ne définit pas, mais renvoie un message d'erreur :

Watir::Exception::UnknownObjectException: Unable to locate element, using {:id=>"pdfRadioNo0"} 

Est-ce que watir trouve aussi des butons radio qui ont été ajoutés plus tard?

C'est Windows XP 32bit SP 3, IE 7, watir 1.6.5, Ruby 1.8.6

Répondre

2

j'ai découvert qu'il est un problème de synchronisation. J'essayais d'accéder à l'élément dans watir avant qu'il ne soit créé.

Ce code fonctionne maintenant:

radio_id = "pdfRadioNo0" 
Watir::Waiter.wait_until{ie.radio(:id, radio_id).exists?} 
ie.radio(:id, radio_id).set() 

J'ai trouvé la solution dans ce fil:

http://groups.google.com/group/watir-general/browse_thread/thread/2dce70e313027d05

+0

Karl, pourriez-vous s'il vous plaît marquer votre réponse correcte, de sorte que la question ne regarde plus comme si elle était sans réponse? –

+0

Désolé, je ne sais pas pourquoi c'est arrivé. Parfois, il y a un retard forcé. Merci de rappeler - karlthorwald - aka – user89021