YII2 MaskedInput:在字段之间移动不突出显示内容
YII2 MaskedInput: moving between fields does not highlight content
通常当使用 tab 键从一个字段移动到另一个字段时,字段内容(如果存在)会突出显示并按下一个键,该字段的内容将被删除,但是当使用带有小数点的 Kartik MaskedInput 时不会发生这种情况场.
当我将控件移动到另一个字段时,光标移动到最后,所以我必须使用退格键删除字段内容或使用鼠标突出显示它。
我有一个包含很多字段的表单,因此需要很长时间才能编辑。
这是我的代码:
<?= $form->field($model, 'val_one' , ['template' => '
<div class="input-group ">
<span class="input-group-addon">
FIRST
<span class="glyphicon glyphicon-euro"></span>
</span>
{input}
</div>
{error}{hint}'])->textInput(['maxlength' => true])->label(false)->widget(yii\widgets\MaskedInput::className(),
[
'clientOptions' => [
'alias' => 'decimal',
'groupSeparator' => '.',
'radixPoint' => ',',
'digits' => 2,
'autoGroup' => true,
'removeMaskOnSubmit' => true,
'rightAlign' => false,
],
'options' => [
'class' => 'form-control',
]
]) ?>
我找到了解决方案。
用这个javascript代码就够了:
$focus = <<< JS
function getSelect(item) {
if (event.keyCode == 9) {
item.select ();
};
};
JS;
$this->registerJs($focus, View::POS_END);
并在表单字段选项中添加此行:
'onkeyup' => 'getSelect($(this))'
这样,每次按下tab键(代码9)都会选择目标字段的内容
通常当使用 tab 键从一个字段移动到另一个字段时,字段内容(如果存在)会突出显示并按下一个键,该字段的内容将被删除,但是当使用带有小数点的 Kartik MaskedInput 时不会发生这种情况场.
当我将控件移动到另一个字段时,光标移动到最后,所以我必须使用退格键删除字段内容或使用鼠标突出显示它。
我有一个包含很多字段的表单,因此需要很长时间才能编辑。
这是我的代码:
<?= $form->field($model, 'val_one' , ['template' => '
<div class="input-group ">
<span class="input-group-addon">
FIRST
<span class="glyphicon glyphicon-euro"></span>
</span>
{input}
</div>
{error}{hint}'])->textInput(['maxlength' => true])->label(false)->widget(yii\widgets\MaskedInput::className(),
[
'clientOptions' => [
'alias' => 'decimal',
'groupSeparator' => '.',
'radixPoint' => ',',
'digits' => 2,
'autoGroup' => true,
'removeMaskOnSubmit' => true,
'rightAlign' => false,
],
'options' => [
'class' => 'form-control',
]
]) ?>
我找到了解决方案。
用这个javascript代码就够了:
$focus = <<< JS
function getSelect(item) {
if (event.keyCode == 9) {
item.select ();
};
};
JS;
$this->registerJs($focus, View::POS_END);
并在表单字段选项中添加此行:
'onkeyup' => 'getSelect($(this))'
这样,每次按下tab键(代码9)都会选择目标字段的内容