Here is the html for the pop up box:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!-- BEGIN /layouts/new_empty_layout.jsp -->
<html>
<head>
<title>SERFF - System for Electronic Rate and Form Filing</title>
<!-- Copyright 2016 National Association of Insurance Commissioners -->
<link rel="stylesheet" type="text/css" href="/styles/serff-core.css"/>
<link rel="stylesheet" type="text/css" href="/styles/core-header.css"/>
<link rel="stylesheet" type="text/css" href="/styles/core-content.css"/>
<link rel="stylesheet" type="text/css" href="/scripts/jquery-ui-css/custom-theme/jquery-ui-1.10.4.custom.css"/>
<script type="text/javascript">
var staticUrlPath = '/';
var appUrlPath = '/serff/';
</script>
<script type="text/javascript" src="/scripts/jquery-1.12.1.min.js"></script>
<script type="text/javascript" src="/scripts/jquery.textarea.pack.js"></script>
<script type="text/javascript" src="/scripts/jquery-ui-1.10.0.min.js"></script>
<script type="text/javascript" src="/scripts/datepicker.js"></script>
<script type="text/javascript" src="/scripts/default_layout.js"></script>
<script>
// custom SERFF dimensions:
// dimension1 = SERFF User Type custom GA dimension
var analyticsEnabled = true;
// insert the analytics script and initialize the Google Analytics "ga" object
if(analyticsEnabled){
var currentScript = document.currentScript || (function() {
var scripts = document.getElementsByTagName('script');
return scripts[scripts.length - 1];
})();
var gaScript = document.createElement('script');
gaScript.async = true;
gaScript.src = '/public/lib/ga/analytics.js';
document.getElementsByTagName("head")[0].insertBefore(gaScript, currentScript);
var ga = window.ga = window.ga || function(){(window.ga.q = window.ga.q || []).push(arguments)};
window.ga.l = +new Date();
window.GoogleAnalyticsObject = 'ga';
ga('create', 'UA-5133885-7', 'auto');
}
function analyticsPageView()
{
doSendAnalytics(function() {
ga('send', 'pageview');
});
}
function analyticsPageViewWithUserType()
{ doSendAnalytics(function() {
ga('send', 'pageview', {
'dimension1' : getUserType()
});
});
}
function analyticsEvent(eventCategory, eventAction, callback){
if(callback){
doSendAnalytics(function() {
ga('send', 'event', eventCategory, eventAction, {'hitCallback': callback});
});
} else {
doSendAnalytics(function() {
ga('send', 'event', eventCategory, eventAction);
});
}
}
function analyticsEventWithUserType(eventCategory, eventAction, callback){
if(callback){
doSendAnalytics(function() {
ga('send', 'event', eventCategory, eventAction, {'hitCallback': callback, 'dimension1' : getUserType()});
});
} else {
doSendAnalytics(function() {
ga('send', 'event', eventCategory, eventAction, {'dimension1' : getUserType()});
});
}
}
function getUserType(){
var userType = 'I';
if(userType == 'S'){
userType = 'State User';
} else if(userType == 'I') {
userType = 'Industry User';
} else if (userType == 'N') {
userType = 'NAIC Admin User';
}
return userType;
}
// only send a message to GA if enabled in the INI file
function doSendAnalytics(method){
if(analyticsEnabled){
method();
}
}
</script>
<link rel="stylesheet" type="text/css" href="/styles/forms2.css"/>
<!-- BEGIN /layouts/iefixes.jsp -->
<!-- END /layouts/iefixes.jsp -->
</head>
<body>
<div id="content">
<div id="main" style="background: none;">
<!-- Copyright 2014 National Association of Insurance Commissioners -->
<!-- BEGIN /filing/ -->
<html>
<head>
<title>SERFF - System for Electronic Rate and Form Filing</title>
<link rel="stylesheet" type="text/css"
href="/styles/serff-core.css" />
<link rel="stylesheet" type="text/css"
href="/styles/core-header.css" />
<link rel="stylesheet" type="text/css"
href="/styles/core-content.css" />
<link rel="stylesheet" type="text/css"
href="/styles/forms2.css" />
<!-- BEGIN /layouts/iefixes.jsp -->
<!-- END /layouts/iefixes.jsp -->
<script language="javascript">
var uploadSubmitted = false;
$( document ).ready(function() {
$( 'form' ).submit(function( event ) {
if (uploadSubmitted) {
alert( "You have already performed this action. Please wait for the page to refresh." );
event.preventDefault();
} else {
uploadSubmitted = true;
}
});
});
var skipcycle = false;
function updateAttachments() {
var groupId = window.opener.selectedAttachmentGroup;
if (uploadForm.groupId.value == null || uploadForm.groupId.value ==''){
uploadForm.groupId.value = groupId;
}
var index = window.opener.selectedIndex;
if (uploadForm.index.value == null || uploadForm.index.value ==''){
uploadForm.index.value = index;
}
}
function focusOnMe(){
if (!skipcycle){
window.focus();
}
mytimer = setTimeout('focusOnMe()', 500);
}
</script>
</head>
<body onload = "mytimer = setTimeout('focusOnMe()', 500);updateAttachments();">
<h2>SERFF File Attachment Upload</h2>
<div class="documentArea">
<form name="uploadForm" method="POST" action="/serff/uploadFileAttachment.do" class="styled" enctype="multipart/form-data" id="uploadForm">
<input type="hidden" name="groupId" />
<input type="hidden" name="index" />
<input type="hidden" name="attachmentType" value="0">
<div class="uploadWarning" style="width:325px">
Attachments larger than 3MB or Microsoft Word(tm) documents cannot be uploaded to SERFF.
</div>
<div class="fieldgroup">File 1: <input type="file" name="contentIndexed[0]" value="" onfocus="skipcycle=true" class="inputFile"></div>
<div class="fieldgroup">File 2: <input type="file" name="contentIndexed[1]" value="" onfocus="skipcycle=true" class="inputFile"><br />
</div>
<div class="fieldgroup">File 3: <input type="file" name="contentIndexed[2]" value="" onfocus="skipcycle=true" class="inputFile"><br />
</div>
<div class="fieldgroup">File 4: <input type="file" name="contentIndexed[3]" value="" onfocus="skipcycle=true" class="inputFile"><br />
</div>
<div class="fieldgroup">File 5: <input type="file" name="contentIndexed[4]" value="" onfocus="skipcycle=true" class="inputFile"><br />
</div>
<br />
<div class="actionButtons">
<input type="submit" value="Upload" class="inputSubmit">
<input type="button" class="inputButton" onclick="window.close();" value="Cancel" />
</div>
</form>
</div>
</body>
</html>
<!-- END /filing/fileUpload.jsp -->
</div> <!-- end main div -->
</div> <!-- end content div -->
</body>
</html>
<!-- END /layouts/new_empty_layout.jsp -->
I am trying to get the upload file dialog box to appear by using vba to "click" on one of the browse buttons. The problem is that vba will not let me find the input tags within the uploadForm.
My own code for this:
Set uploadForm = ieUpload.document.getElementById("uploadForm")
For Each inputTag In uploadForm.getElementsByTagName("input")
If inputTag.Name = "contentIndexed[0]" Then inputTag.Click
Next inputTag
Vba raises an "Object variable or with block variable not set" error on the for loop.