Tom:
It's possible, but complicated. You need to look into the field definition where we store the listbox contents. Then you can correlate the display item from the bound item. I've done this before in another context. I've appended the script I used.
John Brinkman
http://blogs.adobe.com/formfeedfunction getDisplayValue(vField)
{
var vBoundItems = saveItems(vField);
var vDisplayItems = dispItems(vField);
if (vBoundItems == null || vDisplayItems == null)
return vField.rawValue;
for (var i=0; i<vBoundItems.length; i++)
{
if (vBoundItems.item(i).value == A.rawValue)
return vDisplayItems.item(i).value;
}
return "";
}
/*
* saveItems(vField)
* Get the list of items that are bound to the data
* @param vField -- the list field
*/
function saveItems(vField)
{
for (var i=0; i<vField.nodes.length; i++)
{
var vChild = vField.nodes.item(i);
if (vChild.className == "items" && vChild.save == "1")
return vChild.nodes;
}
return null;
}
/*
* dispItems(vField)
* Get the list of display items
* @param vField -- the list field
*/
function dispItems(vField)
{
/*
<items>
<text>aaa</text>
</items>
<items save="1" presence="hidden">
<text>111</text>
</items>
*/
for (var i=0; i<vField.nodes.length; i++)
{
var vChild = vField.nodes.item(i);
if (vChild.className == "items" && vChild.save != "1")
return vChild.nodes;
}
return null;
}