This project has moved. For the latest updates, please go here.

Description

Lookup fields display in three modes depending on list settings and the number of lookup items:
  • Small single select lookup
  • Large single select lookup
  • Multi select lookup

Usage

See Common SPField functions for generic functions and properties.

Small single select lookup

This field displays as a dropdown using a SELECT when allow multiple values = No and there are less than 20 values in the lookup list.

// get the field
var smallLookup = SPUtility.GetSPField('Small Lookup');

// set the value using the lookup list item's ID
smallLookup.SetValue(6);

// set the value using the text
smallLookup.SetValue('Indigo');

// Gets the dropdown's text value as a string (Ex: Indigo)
var value = smallLookup.GetValue();
This field has the Dropdown property set:
var smallLookup = SPUtility.GetSPField('Small Lookup');

// Dropdown references the SELECT element for the field.
smallLookup.Dropdown;

Large single select lookup

This field displays as an autocomplete using a text INPUT box when Allow multiple values = No, there are 20 or more values, and your browser is Internet Explorer. If a different browser is used, the field displays as a dropdown (will work like a small single select lookup).

// get the field
var largeLookup = SPUtility.GetSPField('Large Lookup');

// set the value using the lookup list item's ID
largeLookup.SetValue(24);

// set the value using the text
largeLookup.SetValue('Xray');

// Gets the textbox's value as a string (Ex: Xray)
var value = smallLookup.GetValue();
This field has the Textbox property set:
var largeLookup = SPUtility.GetSPField('Large Lookup');

// Textbox references the autocomplete INPUT element for the field.
largeLookup.Textbox;

Multi-select lookup

This field displays as two list boxes with Add and Remove buttons when Allow multiple values = Yes.

// get the field
var multiLookup = SPUtility.GetSPField('Multi-select Lookup');

// set the value using the lookup list item's ID
multiLookup.SetValue(7);

// set the value using the text
multiLookup.SetValue('Violet');

// to remove a value, add an additional parameter
multiLookup.SetValue(7, false);
multiLookup.SetValue('Violet', false);

// Gets the currently selected values as an array of strings (ex: [ 'Violet', 'Orange' ])
var value = smallLookup.GetValue();
This field has four additional properties set:
var largeLookup = SPUtility.GetSPField('Large Lookup');

// ListChoices references the SELECT element of values that can be added
largeLookup.ListChoices;

// ListSelections references the SELECT element of values that can be removed (the current selections)
largeLookup.ListSelections;

// ButtonAdd references the BUTTON element to add items
largeLookup.ButtonAdd;

// ButtonRemove references the BUTTON element to remove items
largeLookup.ButtonRemove;

Last edited Feb 6, 2011 at 9:16 PM by KitMenke, version 1