Klicken Sie mit Applescript oder Javascript auf einen Button (das ist kein Button ?).

Okay, relativer Neuling hier, aber ich habe alle Antworten durchsucht und die meisten Vorschläge ausprobiert und kann keine Möglichkeit finden, die Verwendung von Applescript oder Javascript in Applescript zu automatisieren, um auf eine Schaltfläche auf einer bestimmten Website zu klicken. Ich kann die Website nicht bereitstellen, da sie Teil einer geschützten Krankenaktensoftware ist, aber soweit ich das beurteilen kann, ist die Schaltfläche wie folgt codiert:

  <h3>Add new documents for this patient
         <!-- The fileinput-button span is used to style the file input field as button -->
        <span class="btn fileinput-button" style="float: right !important;">
            <i class="icon-plus"></i>
            <span>Add Files</span>
            <input type="file" name="files[]" multiple="">
        </span>
    </h3>

Ich habe die meisten Javascript- (und Applescript-) Lösungen ausprobiert. Ich habe sogar die Fake-App ausprobiert, die für alle anderen Tasten außer dieser zu funktionieren scheint. Ich habe vergeblich nach einer Schaltflächen-ID gesucht und der obige Code scheint alles zu sein, was sich auf die Schaltfläche bezieht. Die Funktion der Schaltfläche besteht darin, ein Auswahlfenster zum Importieren von Bilddateien aufzurufen.

Die Verwendung der Registerkarten zum Aufrufen der Schaltfläche funktioniert nicht, da die Anzahl der Registerkarten von Patient zu Patient unterschiedlich ist (dynamische Website?).

Ich entschuldige mich im Voraus, wenn dies trivial ist, aber es ist buchstäblich der letzte Schritt in einer langen Reihe von Schritten, die mir viel Zeit sparen würden. Alles andere habe ich hauptsächlich mit Hilfe dieses Boards herausgefunden.

Screenshot der betreffenden Seite.  Es ist die Schaltfläche "Dateien hinzufügen" ?  auf die ich klicken möchte

Vielen Dank an euch alle.

Antworten (1)

Ich habe meine eigene Antwort gefunden, indem ich ein wenig tiefer darin gegraben habe.

tell application "Safari"


do JavaScript "document.getElementsByName('files[]')[0].click();" in document 1


end tell

Die Verwendung von getElementsByName und des Namensattributs 'files[]' war alles, was nötig war (und war übrigens der EINZIGE Ausweg für viele, viele, der in diesem Fall funktionierte).