向CommandItemSettings RadGrid按钮添加样式

时间:2012-11-16 18:31:54

标签: c# asp.net telerik radgrid

我试图在RadGrid中的'AddNewRecordText'按钮后添加一个红色星号。这是代码。红色星号应在“添加奖励”文本后显示。如果有任何建议,请告诉我?谢谢。

 <telerik:RadGrid ID="RadGrid1" AutoGenerateColumns="false" Width="99%" 
  runat="server" MasterTableView-AllowAutomaticInserts="true" GridLines="None" Skin="Default"
                ShowFooter="false" ShowStatusBar="false">
    <MasterTableView Width="100%" DataKeyNames="c_id" CommandItemDisplay="Top"
         CommandItemSettings-ShowAddNewRecordButton="true">
    <CommandItemSettings AddNewRecordText="Add Award *" ShowAddNewRecordButton="true" />

2 个答案:

答案 0 :(得分:1)

RadGrid将AddNewRecordText预呈现为<a>元素。并且您不能为一个元素添加不同的样式 要更改默认行为,您必须使用CommandItemTemplate This demo应该是一个良好的开端。

另一种简单的方法是,您始终可以使用jquery更改页面上的任何样式 这应该适合你(适合我,可能你必须改变ID):

$('a[id$="InitInsertButton"]') //this means: find all <a> elements that have id ending with "InitInsertButton"
   .first() //Get the first element to be sure.
   .append('<span style="color:red"> *</span>') //Add text inside a attribute.  

您必须在document.ready()上添加此代码 这是一个小小的问题,可以看到它的实际效果:http://jsfiddle.net/rXhnM/

答案 1 :(得分:0)

所以我再次参加聚会,但你可以在服务器端获得对该控件的引用:

protected void HandleGridItemCreated(object sender, GridItemEventArgs e)
{
 if(e.Item is GridCommandItem)
 {
  var button = e.Item.FindControl("SaveChangesIcon") as Button;
  var link = e.Item.FindControl("SaveChangesButton") as LinkButton;
  button.Text += "<span class='red'>*</span>";
 }
}

我需要在点击时添加一些javascript才能运行,这就是我设法将其拉下来的方式。我想添加*并附加到text属性会产生您正在寻找的结果。我们关注2016版Telerik控制系统。