Если эта кнопка должна совершать какие-то действия, не связанные с сохранением/удалением редактируемого элемента, то можно создать пользовательское свойство, которое будет возвращать в качестве представления кнопку, а на клик кнопки уже будет навешано нужное действие(открытие попапа, заполнение поля и т.п.). И свойство с таким типом надо добавить к нужному инфоблоку, после чего настроить вкладку "Анонс".
Вот как-то так - [URL=http://pastebin.com/MspApa7J]http://pastebin.com/MspApa7J[/URL]:
[CODE]<?php
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
class CIBlockPropertyCustomButton
{
function GetUserTypeDescription()
{
return array(
"PROPERTY_TYPE" => "S",
"USER_TYPE" => "custom_button",
"DESCRIPTION" => 'Кнопка',
"GetPublicViewHTML" => array("CIBlockPropertyCustomButton","GetPublicViewHTML"),
"GetAdminListViewHTML" => array("CIBlockPropertyCustomButton","GetAdminListViewHTML"),
"GetPropertyFieldHtml" => array("CIBlockPropertyCustomButton","GetPropertyFieldHtml"),
"ConvertToDB" => array("CIBlockPropertyCustomButton","ConvertToDB"),
"ConvertFromDB" => array("CIBlockPropertyCustomButton","ConvertFromDB"),
);
}
function GetPublicViewHTML($arProperty, $value, $strHTMLControlName)
{
return '';
}
function GetAdminListViewHTML($arProperty, $value, $strHTMLControlName)
{
return '<button onclick="alert("Click on list"); return false;">Click</button>';
}
function GetPropertyFieldHtml($arProperty, $value, $strHTMLControlName)
{
return '<button onclick="alert("Click on edit page"); return false;">Click</button>';
}
function ConvertToDB($arProperty, $value)
{
return '';
}
function ConvertFromDB($arProperty, $value)
{
return '';
}
}
AddEventHandler('iblock', 'OnIBlockPropertyBuildList', array('CIBlockPropertyCustomButton', 'GetUserTypeDescription'));
?>
[/CODE]
Выглядит это так:
[IMG]http://img219.imageshack.us.bb/img219/1846/20110410121458.png[/IMG]
[IMG]http://img40.imageshack.us.bb/img40/6944/20110410121536.png[/IMG]