Consulting

Results 1 to 2 of 2

Thread: How to call onClick Javascript function in VBA

  1. #1

    How to call onClick Javascript function in VBA

    Hi Experts!

    In a manual process, when I click the save button, it will pop-up a confirm() javascript function, so I need to click the "OK" to proceed. I am automating an upload function in a web page.
    I have a problem executing an onclick function in a web page using VBA.
    see below the javascript code of the "save" button.
    HTML Code:
    <input type="submit" name="cmdsave" 
    value="Save" onclick="return submitbutton_click();" 
    id="cmdsave" class="button" style="width:50px;" />&nbsp;
    I have no problem in clicking the "save" button, I can do that using code below
    Set ElementNameV = HTMLDoc.getElementsByName("cmdsave")
    ElementNameV(0).click
    The problem is when I click the "save" button, the confirm pop-up will appear and the macro will stop running from there unless the pop-up had been pressed.
    and so I came up in another solution removing the pop-up message using the code below.
    HTML Code:
    ElementNameV(0).removeAttribute ("onclick")
    ElementNameV(0).setAttribute "onclick", "return true"
    ElementNameV(0).click
    Using that code, I am able to attach the attachment without any problem, the pop-up is gone and I am able to click save.
    But the problem is, I am able to attach the file but it is not uploading in the site. Then when I review the HTML code of the web page.
    using the onClick function it calls the submitbutton_click(); Javascript function, and the code for that is below
    HTML Code:
    function submitbutton_click() {
            document.getElementById('FileAttachement2_hdnButtonFlag').value = "SAVE";
            var submitbutton = document.getElementById('cmdDownSave');
            var uploadobj=document.getElementById('FileAttachement2_Uploader1');
            if(!window.filesuploaded)
            {
               if (!ConfirmSave()) return false;
                if(uploadobj.getqueuecount()>0)
                {
                    
                    uploadobj.startupload();
                }
                else
                {
                    //var uploadedcount=parseInt(submitbutton.getAttribute("itemcount"))||0;
                    //if(uploadedcount>0)
                    //{
                        return true;
                    //}
                    //alert("Please browse files for upload");
                }
                return false;
            }
            window.filesuploaded=false;
            return true;
        }
    HTML Code:
    function ConfirmSave()
    {
    var Ok = confirm('Are you sure all Documents and Information are attached and correct before saving?');
    
    if(Ok)
    return true;
    else
    return false;
    }
    Reviewing the javascript codes, I think the upload will only run when I execute the javascript function "uploadobj.startupload();" but then I had no success in running the javascript function.

    here are the codes I have tried so far:
    HTML Code:
    Call HTMLDoc.parentWindow.execScript("submitbutton_click();")    '//this one doesn't worked
    Call HTMLDoc.parentWindow.execScript("uploadobj.startupload();")    '//doesn't worked also
    Re Post in : http://www.mrexcel.com/forum/newthre...newthread&f=10
    http://www.excelforum.com/showthread...2347&p=4071079

  2. #2
    Hello? any suggestion from the experts?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •