web-dev-qa-db-ja.com

yiiの基本的な非表示フィールド

Yiiの非表示テキストにデータを配置しようとしていますが、方法がわかりません。通常のphp構文と同様のコードが必要です。

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

これは、静的な値がaのフィールドになるはずです。エラーチェックのために$ _POST変数を使用するために必要なだけです。

フィールドを配置するためだけにモデルとコントローラーを変更することを避けることは可能ですか?私はコードのスニペットしか持っていないので、giiを使用できません。申し訳ありませんが、yiiについてほとんど理解していないので、手がかりがありません最後の2文について私が言っていることが正しいかどうか。

26
marchemike

ビューで

隠しフィールドwithモデルとフォーム:

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

またはなしモデル

<?php echo CHtml::hiddenField('name' , 'value', array('id' => 'hiddenInput')); ?>
54
Developerium
8
Coz

Yii隠し入力:

<?php echo $form->hiddenField($model,'fieldName',array('value'=>'foo bar')); ?>
8
Alireza Fallah

データベースのデータと値またはサイズのフィールドの場合:

echo $form->hiddenField($experience,'job_title',array('size'=>'50','value'=>$experience_data['job_title'])); ?>
3
Tchaps

yii2の場合、これを試すことができます

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

それは私のために働いた

2
Shuhad zaman

Yii 1

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

Yii2

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

また、Yii2で注目に値するのは、配列パラメーターが通常のフォームフィールドとは異なる動作をすることです。例えば。通常の入力は次のようになります。

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

お役に立てれば。

2
johnsnails

あるいは、

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

これにより、非表示フィールドの値がモデルのIDとして設定されます。 [$ i]は、複数レコードの更新に役立ちます。

1
happyhardik

これを行うには2つの方法があります...

モデルなし

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

モデル付き

echo $form->hiddenField($model, 'name');
0
Asfandyar Khan