Trying to complete an asp.net search form, but this simple task is stumping me and preventing retrieving the data. just cannot pass a value to the text input.
The form's html is
<div id="ctl00_cntMain_Updatepanel1">
<div class="flyout">
<h2>ENTITY SEARCH</h2>
<div id="ctl00_cntMain_pnlSearchBox"
onkeypress="javascript:return WebForm_FireDefaultButton(event, 'ctl00_cntMain_lnkSearchIcon')">
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<td style="width: 30px; padding: 10px 10px 10px 10px;">
<select name="ctl00$cntMain$drpSearchOptions"
onchange="javascript:setTimeout('__doPostBack(\'ctl00$cntMain$drpSearchOptions\',\'\')', 0)"
id="ctl00_cntMain_drpSearchOptions" class="dropdownSearch">
<option selected="selected" value="0">Search by</option>
<option value="CoName">Company Name</option>
<option value="CoNo">Company No.</option>
<option value="IDNo">Owner ID</option>
</select>
</td>
<td style="padding: 10px 10px 10px 10px;">
<input name="ctl00$cntMain$txtSearch" type="text" id="ctl00_cntMain_txtSearch" class="textBoxSearch"
style="width:100%;" />
<input type="hidden" name="ctl00$cntMain$wtmkSearch_ClientState" id="ctl00_cntMain_wtmkSearch_ClientState" /></td>
<td style="width: 10px; padding: 10px 10px 10px 10px;">
<a id="ctl00_cntMain_lnkSearchIcon" onmouseover="this.style.color='#78ae6a';"
onmouseout="this.style.color='#00727D';"
href="javascript:WebForm_DoPostBackWithOptions(new%20WebForm_PostBackOptions("ctl00$cntMain$lnkSearchIcon",%20"",%20true,%20"Search",%20"",%20false,%20true))"
style="color:#00727D;"></a>
</td>
</tr>
<tr>
<td colspan="3">
<span id="ctl00_cntMain_RequiredFieldValidator1" style="color:Red;display:none;">Type in your search query</span>
<span id="ctl00_cntMain_RequiredFieldValidator15" style="color:Red;display:none;">Select search option</span></td>
</tr>
</table>
</div>
</div>
</div>
This is my VBA code to interact with the form
CoName = "Any Company Name"
If CoName <> "" Then
For Each ele In objIE.document.getElementById("ctl00_cntMain_drpSearchOptions")
If ele.Value = "CoName" Then ele.Selected = True: Exit For
Next
objIE.document.getElementsByName("ctl00$cntMain$txtSearch")(0).Value = CoName
'have tried getElementById("ctl00_cntMain_txtSearch").value = CoName but did not succeed
objIE.document.getElementById("ctl00_cntMain_lnkSearchIcon").Click
Do While .Busy = True Or objIE.readyState <> 4: DoEvents: Loop
End If
Appears that value of text input is not set correctly, it seems to appear as "placeholder" text