Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SharePoint 2016 | SharePoint Foundation 2013 | SharePoint Online-| SharePoint Server 2013
Definiert den Handler für einen Befehl.
Definition
<CommandUIHandler
Command = "Text"
CommandAction = "Text"
EnabledScript = "Text"
/>
Elemente und Attribute
In den folgenden Abschnitten werden Attribute, untergeordnete und übergeordnete Elemente erläutert.
Attribute
| Attribut | Beschreibung |
|---|---|
| Befehl | Erforderlich. Der Name eines Befehls. Der Wert dieses Attributs stimmt mit dem Wert eines Command-Attributs für ein Element überein, das ein Steuerelement definiert. |
| CommandAction | Erforderlich. Eine Skriptanweisung, die beim Aufruf dieses Handlers ausgeführt werden soll. Microsoft SharePoint Foundation ruft die eval-Methode auf und übergibt den Wert dieses Attributs. Der Wert des Attributs kann Ersatztoken enthalten, die beim Rendering transformiert werden. Die folgenden Token werden erkannt:
|
| EnabledScript | Hinweis: Das EnabledScript-Attribut funktioniert nicht für benutzerdefinierte Aktionen, die im Hostweb von einem SharePoint-Add-In bereitgestellt werden. Eine Skript-Anweisung, die ausgeführt wird, um zu bestimmen, ob der Befehl aktiviert oder deaktiviert ist. Der Skriptausdruck sollte einen Boolean-Wert zurückgeben: true, falls der Befehl aktiviert ist, sonst false. Wenn das Menüband deaktiviert ist, werden Befehle ausgegraut und sind nicht klickbar. Wie beim CommandAction-Attribut wird die eval-Methode mit dem Wert dieses Attributs als Argument aufgerufen. Für das EnabledScript-Attribut werden die für das CommandAction-Attribut beschriebenen Ersatztoken nicht unterstützt. |
Untergeordnete Elemente
Keine
Übergeordnete Elemente
Vorkommen
Minimum: 1
Maximum: Unbegrenzt
Beispiel
Im folgenden Beispiel werden ein Schaltflächenbefehl und ein entsprechender Handler definiert.
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<CustomAction
Id="EmailContacts"
RegistrationType="List"
RegistrationId="105"
Location="CommandUI.Ribbon">
<CommandUIExtension>
<CommandUIDefinitions>
<CommandUIDefinition
Location="Ribbon.ListItem.Actions.Controls._children">
<Button
Id="Ribbon.ListItem.Actions.Email"
Alt="$Resources:core,E-Mail;"
Sequence="55"
Command="emailContacts"
LabelText="$Resources:core,E-Mail;"
Description="$Resources:core,E-Mail;"
TemplateAlias="o1"/>
</CommandUIDefinition>
</CommandUIDefinitions>
<CommandUIHandlers>
<CommandUIHandler
Command="emailContacts"
CommandAction="javascript:
function getItemIds()
{
var itemIds = '';
var items = SP.ListOperation.Selection.getSelectedItems();
var item;
for(var i in items)
{
item = items[i];
if(itemIds != '')
{
itemIds = itemIds + ',';
}
itemIds = itemIds + item.id;
}
return itemIds;
}
function handleReadyStateChange()
{
if (client.readyState == 4)
{
if (client.status == 200)
{
// client.responseText is mailto string
window.location = ('mailto:' + client.responseText);
}
}
}
function invokeEmailContacts()
{
var params = 'itemids=' + getItemIds();
// Posting to EmailContacts.ashx to get the mailto string
var site='{SiteUrl}';
var url = site + '/_layouts/emailcontacts.ashx?listId={ListId}';
client = null;
client = new XMLHttpRequest();
client.onreadystatechange = handleReadyStateChange;
client.open('POST', url, true);
client.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
client.setRequestHeader('Content-length', params.length);
client.send(params);
}
invokeEmailContacts();"
EnabledScript="javascript:
function enableEmailContacts()
{
var items = SP.ListOperation.Selection.getSelectedItems();
return (items.length > 0);
}
enableEmailContacts();"/>
</CommandUIHandlers>
</CommandUIExtension>
</CustomAction>
</Elements>