我的控制器是这样的
$content = View::factory('user/biochemistryTestForm')
->bind('result', $result);
$this->template->content = $content;
//here $result is array of Datatbase records
视野
<?php echo Form::select('allvalues', $result,null, null) ?>
this tag generate code to browser like this
<select name="allvalues">
<option value="0">Photo</option>
<option value="1">Kishore</option>
<option value="2">Chandrapal</option>
<option value="3">Framework</option>
</select>
我想以编程方式为此标记设置值
帮帮我
答案 0 :(得分:2)
我不确定我是否完全理解这个问题,但无论如何我都会有机会回答。
如果要将select选项的值设置为numeric以外的值,则需要为控制器中的$result
变量分配带关联键的数组。
$result = array(
'photo' => 'Photo',
'kishore' => 'Kishore',
'chandrapal' => 'Chandrapal',
'framework' => 'Framework'
);
编辑:我注意到您的$result
变量已从数据库中分配了一个数组,您还没有发布为$result
分配值的代码,所以我是在黑暗中去刺。
您需要将->as_array('key','value')
添加到控制器中数据库结果调用的末尾。 键将用作数组键,它将成为选择选项值,将使用值,数组值将成为选择选项标签。< / p>
<强>控制器强>
$results = DB::select('name')
->from('things')
->execute()
->as_array('name', 'name');
希望这有帮助。
答案 1 :(得分:-1)
如果你想为select标签设置值,你可以使用html标签
<select name="allvalues">
<option value="Your value">Photo</option>
<option value="Your value">Kishore</option>
<option value="Your value">Chandrapal</option>
<option value="Your value">Framework</option>
</select>
直接代替kohana标签
<?php echo Form::select('allvalues', $result,null, null) ?>