/ / VBScript in attesa di fare clic sul pulsante - vbscript

VBScript in attesa che venga premuto il pulsante - vbscript

Sono nuovo di VBScript e sto provando a misurareprestazione di un sito Web che ho creato. Nel mio sito Web, quando si fa clic su un pulsante, quell'elemento verrà aggiunto a un carrello. Ci sono 6 articoli da aggiungere al carrello. Se il mio script fa clic sul primo elemento da aggiungere al carrello, voglio che aspetti fino a passare all'istruzione successiva (senza inserire un numero di sonno casuale). Nel mio programma, aggiunge solo il primo e l'ultimo articolo al mio carrello:

set webbrowser = createobject("internetexplorer.application")
webbrowser.visible = true

webbrowser.navigate("https://www.mywebsite")
Do While webbrowser.busy "waiting till the webpage is loaded
wscript.sleep(1)
Loop

buttonID = "item1"
Demo(buttonID)"Program should wait till the first button is clicked before going to the statement below"
buttonID = "item2"
Demo(buttonID)
buttonID = "item3"
Demo(buttonID)
buttonID = "item4"
Demo(buttonID)
buttonID = "item5"
Demo(buttonID)
buttonID = "item6"
Demo(buttonID)

Sub Demo(buttonID)
Do
set x = webbrowser.Document.getElementById(buttonID)
If x is nothing then
wscript.sleep 1
else
webbrowser.Document.getElementById(buttonID).click
Exit Do
end if
Loop
End Sub

risposte:

1 per risposta № 1

Puoi fare qualcosa del genere:

set objie = createobject("internetexplorer.application")
objie.visible=true
objie.Navigate "https://www.swrm2017.org/TimeMeasurementOnlineShoppingSystem/BrowseCatalog/Catalog.php"
swait()

for i = 1 to 6
id = "item"&i
set button = objie.document.getElementById(id)
button.click
swait()
set button = nothing
next
set ie = nothing

sub swait()
while(objie.readystate<>4)
wscript.sleep 10
wend
while objie.document.readystate<>"complete"
wscript.sleep 10
wend
end sub