我有一个CMenu代码,当我尝试删除某项时会触发两个确认对话框。

这是我的CMenu代码的样子:

$this->widget('zii.widgets.CMenu', array(
    'items'=>array(
        array('label'=>'List things', 'url'=>array('list')),
        array('label'=>'Delete thing', 'url'=>'#', 'linkOptions'=>array(
            'submit'=>array(
                'delete',
                'id'=>$model->thingID
            ),
            'confirm'=>'Are you sure?'
        )),
    ),
    'htmlOptions'=>array(
        'class'=>'divided'
    )
));

我在这段代码中缺少什么吗?为什么确认对话框会触发两次?

编辑:

问题是由skel-panel内部的某种东西引起的,但是我无法找出到底是什么引起了它。有什么想法如何在skel-panel中禁用href跟踪吗?

编辑2:

我找到了问题的根源,但不确定如何解决。事情是skel-panel将整个body包装在div中。奇怪的是,它显然会处理所有hrefs上的点击。
initObjects函数是包装所有内容的函数(此处为https://github.com/n33/skelJS/blob/master/src/skel-panels.js)

编辑3:

好的,我发现了这个错误。它是在jQuery中的某个地方引起的,并且已在1.8.3和1.9.0之间修复。

在哪里可以找到这两个版本之间的错误/修复/补丁的详细日志,以便仅选择自己感兴趣的更改? (因为我负担不起升级到jQuery 1.9.x所需的时间)

最佳答案

我认为它出现了两次,因为从delete调用CMenu已经自动触发了对话框。尝试删除

'confirm' => 'Are you sure?'

10-06 15:06