27

我正在尝试将数据放在 yii 中的隐藏文本中,但我不知道如何。我需要与常规 php 语法类似的代码:

<input type="hidden" name="field_name" value="a"/>

它应该是一个静态值为 a 的字段。我只需要它与我的 $_POST 变量一起进行错误检查。

是否可以避免仅仅为了放入字段而修改模型和控制器?我不能使用 gii 因为我只有代码片段。对不起,我对 yii 了解不多,所以我不知道我是什么'我说的最后两句话是正确的。

4

8 回答 8

56

在视图中

具有模型和形式的隐藏字段:

<?php echo $form->hiddenField($model, 'name'); ?>

没有模型

<?php echo CHtml::hiddenField('name' , 'value', array('id' => 'hiddenInput')); ?>
于 2013-09-22T13:46:32.360 回答
10

Yii 隐藏输入:

<?php echo $form->hiddenField($model,'fieldName',array('value'=>'foo bar')); ?>
于 2013-09-22T13:32:00.970 回答
8

在 Yii2 中,这也发生了变化:

<?= Html::activeHiddenInput($model, 'name') ;?>

参考:

http://www.yiiframework.com/forum/index.php/topic/49225-activeform-how-do-you-call-label-input-and-errors-individually/

https://github.com/yiisoft/yii2/issues/735

于 2014-10-23T14:11:02.000 回答
3

如果来自数据库和值或大小字段的数据:

echo $form->hiddenField($experience,'job_title',array('size'=>'50','value'=>$experience_data['job_title'])); ?>
于 2013-12-08T17:00:36.387 回答
3

易1

<?php echo $form->hiddenField($model, 'name'); ?>

Yii2

<?= Html::activeHiddenInput($model, 'attribute', ['value' => 'Some Value']) ?>

另外,对于 Yii2 来说值得注意的是,数组参数的工作方式与普通表单字段不同。EG 一个正常的输入看起来更像这样。

<?= $form->field($model, 'attribute', ['inputOptions' => ['placeholder' => 'Some Placeholder', 'value' => 'Some Input Value']]) ?>

希望这可以帮助。

于 2015-01-25T07:06:28.503 回答
2

对于 yii2 你可以试试这个

<?= $form->field($model, 'user_type',['inputOptions' => ['value' => '2']])->hiddenInput()->label(false) ?>

它对我有用

于 2016-08-30T11:45:50.407 回答
1

或者,

echo CHtml::activeHiddenField($model,"[$i]id", array("value" => $model->id));

这会将隐藏字段值设置为模型中的 id。[$i] 对于多条记录更新很有用。

于 2014-06-23T09:27:55.350 回答
0

这里有两种方法可以做到这一点......

无模型

echo CHtml::hiddenField('name' , 'value', array('id' => 'name'));

带模型

echo $form->hiddenField($model, 'name');
于 2016-03-14T11:25:54.167 回答