CakePHP提交图像类型区分保存和打印&保存

时间:2012-07-11 12:54:14

标签: image cakephp form-submit

在我的CakePHP 1.3版本中,我有两个提交类型的图像标记,如下所述:

echo $form->submit('save-print.jpg' , array('name'=>'savenprint','value'=>"savenprint",'id'=>"savenprint"));

echo $form->submit('save.jpg');

现在,我想要的是在我的控制器中识别提交的按钮,“保存”或“打印并保存”

所以我已经为每个人应用了name and value,在Chrome浏览器中,我获得了名称和价值对,而在Mozilla Firefox中,我没有得到相同的结果。

任何想法,如何实现?或者我的代码中有什么错误或缺失。

最感谢的回应将会受到赞赏。

谢谢!

1 个答案:

答案 0 :(得分:1)

您的表格应如下:

echo $form->submit('save-print.jpg' , array('name'=>'savenprint','value'=>"save",'id'=>"savenprint"));
echo $form->submit('save.jpg', array('name'=>'savenprint','value'=>"savenprint",'id'=>"savenprint"));

在您的控制器使用中:

if($this->data['ModelName']['sbmtfrm_x'] == 'save')
{
     //Your save code here
}
else if($this->data['ModelName']['sbmtfrm_x'] == 'savenprint')
{
     //Your savenprint code here
}

另一种解决方案是创建一个隐藏字段并在jquery代码中单击提交按钮设置它的值,如下所示:

您的表格:

echo $form->submit('save-print.jpg' , array('name'=>'savenprint','value'=>"save",'id'=>"savenprint", 'class' => 'submitBtn'));    
echo $form->submit('save.jpg', array('name'=>'savenprint','value'=>"savenprint",'id'=>"savenprint", 'class' => 'submitBtn'));
echo $form->hidden('sbmtValue', array('id' => 'sbmtValue', 'value' => ''));

您的jquery代码应如下所示:

$(document).ready(function(){
    $('.submitBtn').click(function(){
       $('#sbmtValue').val($(this).val());
    });
});

在控制器的操作中使用:

if($this->data['ModelName']['sbmtValue'] == 'save')
{
     //Your save code here
}
else if($this->data['ModelName']['sbmtValue'] == 'savenprint')
{
     //Your savenprint code here
}  

希望它对你有用。