I am working on a browser extension that will automatically apply a gift 
card. I have to interact with the input fields and buttons using javascript 
only knowing the document element. My code for interacting with the angular 
html does not seem to register. I cannot apply the gift card on the page.  
What is the proper way to interact with the angular items from javascript 
if I am starting with only the document.element for those items? My 
attempts that do not work are below:

There are three document elements which are angular elements.    
1. A gift card number input field: cardInput    
2. A gift card pin number field: codeInput    
3. An apply button: applyButton    

I am trying to fill in the cardInput field, the codeInput field and click 
the applyButton starting with only the document elements.

I fill in the fields using the following code, but I'm not sure if this is 
the correct way to interact with angular. The field does seem to get filled 
in though.

        if(angular){
    cardInput.value=1234567890;
        e=angular.element(cardInput);
        e.trigger("input");
        e.scope().$apply();
        }

I press the applyButton with the following code but it does not seem to 
register with angular

    if(angular){
    //applyButton.click();
    var e = angular.element(applyButton);
    e.trigger('click');
    e.scope().$apply();
    }


Here is the angular html code for the applyButton

    <input value="Apply" class="apply button gift-card-apply" 
data-ng-click="!orderSubmitErrors.giftCard.sectionHasErrors &amp;&amp; 
applyGiftCard($event)" 
client-validation="onSubmit,giftCard,validateSubsection" type="button">



and the angular html code for the card input field

    <input class="ng-valid ng-dirty" maxlength="16" restrict-numbers="" 
data-ng-model="tenderedCardInfo.giftCardNumber" pattern="[0-9]*" 
client-validation="onExit" data-required-in-nonempty-group="" 
data-required-on-apply="" data-subsection="giftCard" data-combo-field="" 
focus-me="focusMeFields.focusOnGiftCardNumber" type="text">

What is the proper way to interact with the angular items from javascript 
if I am starting with only the document.element for those items. 

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to