wbr2005 2009-09-02 12:18
浏览 215
已采纳

gridpanel添加按钮列和响应函数问题

[code="java"]{

header : 'hello',
dataIndex : ' ',
width : 100,
renderer: createButton
}[/code]
[code="java"]
function createButton(){
return "" ;
// return "添加 " ;
}

function addFn(){ 
alert('hello');
}

[/code]
[size=small][color=red]通过以上方法可以添加一列按钮,我想给按钮添加一个响应函数,用来弹出一个添加窗口,但按我代码中的这个方式提示addFn未定义,应该怎样添加响应函数呢?[/color][/size]
[b]问题补充:[/b]
[color=red][size=small]那几篇文章没怎么看明白,我想要的是通过点击这个添加按钮,弹出一个formpanel表单,并将按钮所在行的某一列的数据自动映射到表单的textfield中,怎么实现,代码应该怎么写?我想关键问题是2个,一是能响应函数,另一个是用什么方式传递参数,我不会。[/size][/color]
[b]问题补充:[/b]
[size=small][color=red]非常感谢你的热心解答,你的代码我试了,可以响应函数。我能不能将链接样式改为按钮的形式,应该怎么改,你的代码有些涉及html部分的语法不是很明白,不敢乱改。[/color][/size]
[b]问题补充:[/b]
[size=small][color=red]非常感谢你的指导。我再看看下面的参数传递问题怎么解决,有问题再请教。另外问一下,这个悬赏分怎么获得,快没分了,以后就没机会提问了啊。[/color][/size]

  • 写回答

5条回答 默认 最新

  • iteye_10013 2009-09-02 13:36
    关注

    下面摘抄自我以前的一些代码,你参考下吧:
    首先是column的定义:
    [code="javascript"]
    {
    header: '操作',
    dataIndex: 'node',
    renderer: function (value, meta, record) {
    //在这里定义了3个操作,分别赋予不同的css class以便区分
    var formatStr = "详细 | 签阅";
    if (this.isAdmin) formatStr += " | 删除";
    var resultStr = String.format(formatStr, record.get('id'), record.get('id'), record.get('id'));
    return "

    " + resultStr + "
    ";
    }.createDelegate(this),
    css: "text-align:center;",
    width: 30,
    sortable: false
    }
    [/code]

    然后是事件:
    [code="javascript"]
    //单击事件
    grid.on('cellclick', function (grid, rowIndex, columnIndex, e) {
    var btn = e.getTarget('.controlBtn');
    if (btn) {
    var t = e.getTarget();
    var record = grid.getStore().getAt(rowIndex);
    var control = t.className;
    switch (control) {
    case 'alarm_detail':
    this.showAlarmDetail(record.id);
    break;
    case 'alarm_check':
    this.checkAlarm([record.id]);
    break;
    case 'alarm_delete':
    this.deleteAlarm([record.id]);
    break;
    }
    }
    },
    this);
    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥15 Stata 面板数据模型选择
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏