Yii的提交按钮国际化(Yii submitButton i18n)

2019-09-18 12:25发布

我发现如何国际化的提交按钮的信息,如:

echo CHtml::submitButton(Yii::t('tr','Print'),array('confirm'=>Yii::t('tr','Please confirm printing'),));

然后设定语言翻译也很好的系统消息,但如何将提交确认弹出消息框CANCEL / OK按钮?

Answer 1:

使用备用溶液CJuiDialog :

  1. 代号为jQueryUI的对话框 (CJuiDialog是一些额外的细节警予包装):

     <?php $this->beginWidget('zii.widgets.jui.CJuiDialog', array( 'id'=>'mydialog', // additional javascript options for the dialog plugin 'options'=>array( 'title'=>Yii::t('tr', 'Title'), 'autoOpen'=>false, 'modal'=>true, 'closeOnEscape'=>true, 'closeText'=>Yii::t('tr', 'Cancel'), 'resizable'=>false, 'buttons'=>array( Yii::t('tr', 'Ok')=>'js:function(){$("#myform-id").submit();$(this).dialog("close");}', Yii::t('tr', 'Cancel')=>'js:function(){$(this).dialog("close");}' ) ), )); echo Yii::t('tr','Please confirm printing'); $this->endWidget('zii.widgets.jui.CJuiDialog'); ?> 
  2. 在该对话框中出现的onclick提交按钮的事件:

     echo CHtml::submitButton(Yii::t('tr','Print'),array('onclick'=>'$("#mydialog").dialog("open"); return false;')); 

Ofcourse该对话框不会像默认的浏览器什么/ JS确认对话框,但如果需要的话也可以使用。 正如已经在评论中提到ORS, 默认的确认对话框不能改变,局部的浏览器应该本地化消息。

在此示例中我刚刚提交了一份ID的形式myform-id ,但是任何事情都有可能在OK按钮的功能来完成。



文章来源: Yii submitButton i18n