I am trying to use the <html:select> tag in my jsp page but am getting the 
following  javascript error, 
 
Microsoft JScript runtime error: Object expected.
 
In my jsp page I have:
 
<table align="left" class="tableGold">

<tr>

<th align="left" bgcolor="#EEE8AA"><font size="-1" 
color="#ff0000">*</font><bean:message key="table.head.category"/></th>

</tr>

<tr>

<td align="center" valign="middle" >

<div>

<div style="{float: left;}" >

<html:select styleId="category" property="devicecategoryid" 
onchange="selectDevOrStent()">

<html:option value=""><bean:message 
key="select.list.device.category"/></html:option> 

<html:options collection="DeviceCategory" property="id" 
labelProperty="description"/>

</html:select>

</div>

<div id="otherdev" style="{float: left; display: none; font-family: Arial, 
Helvetica, sans-serif; font-size: xx-small; vertical-align: middle; 
padding-left: 50px; line-height: 1.2em}">

<html:text property="other" size="35" maxlength="60" onfocus="clearOther()" 
value = "Enter Device Description" />

</div>

</div>

</td>

</tr>

</table>

 

Here is the javascript funtion that is called when a onchange event is detected:

 

function selectDevOrStent(){

alert("In SelectDevOrStent");

var category = id("category").options[id("category").selectedIndex].value;

var categoryText = id("category").options[id("category").selectedIndex].text;

//alert("categoryText = " + categoryText);

if(categoryText == 'Stents'){

//alert("Stent selected");

id("stent").style.display = "block";

id("dev").style.display = "none";

id("otherdev").style.display = "none";

getSelectList("category", "StentManufacturerSelect.do", stentmanufcallback);

}else if(categoryText == 'Joint Replacement'){

//alert("Joint Replacement selected");

document.DeviceInputForm.devicetypeid.disabled='true';

document.DeviceInputForm.manufacturer.disabled='true';

document.DeviceInputForm.modelnumber.disabled='true';

getSelectList("category", "DeviceLocationSelect.do?devicecategoryid=" + 
escape(id("category").value), locationcallback);

id("dev").style.display = "block";

id("stent").style.display = "none";

id("otherdev").style.display = "none";

}else if(categoryText == 'Other'){

//alert("Other selected");

id("otherdev").style.display = "block";

id("stent").style.display = "none";

id("dev").style.display = "none";

}else{

//alert("Stent not selected");

id("stent").style.display = "none";

id("dev").style.display = "block";

id("otherdev").style.display = "none";

getSelectList("category", "DeviceTypeSelect.do?devicecategoryid=" + 
escape(id("category").value), devicecallback);

}

}

Everything is fine, I can see the select box and all the options are there but 
when I trigger a onchange event I get the error. Can anyone see what I am doing 
wrong?

 

Thanks.

Reply via email to