我在API中搜索没有成功。 $ htmlOption的键的描述不完整。 我对一些公共方法特别感兴趣,比如“fileField($ model,$ attribute,$ htmlOptions = array())”和其他类CActiveForm。
答案 0 :(得分:5)
通常,$ htmlOptions数组由生成的HTML元素描述。该数组实际上是HTML元素的“属性”。键是属性名称。因此,如果您使用CHtml :: Image生成图像,则“src”是有效的$ htmlOption密钥。如果生成CHtml :: Link,则“href”是有效的$ htmlOption密钥。
如果你查看文档,CHtml::link()元素的$ htmlOptions参数的描述是:
其他HTML属性。除了普通的HTML属性外,还可以识别一些特殊属性(有关详细信息,请参阅clientChange和tag。)
我通常使用$ htmlOptions数组向HTML元素添加类,ID或样式,如下所示:
<?php echo CHtml::link("Click Me","http://stackoverflow.com",array("id"=>"myId","class"=>"class1 class2","style"=>"color: #f00;")); ?>
这将呈现以下代码:
<a href="http://stackoverflow.com" id="myId" class="class1 class2" style="color: #f00;">Click Me</a>
Yii允许在$ htmlOptions数组中为一些元素(链接,按钮和其他一些元素)提供一些额外的“特殊”AJAX选项。它们允许您创建AJAX链接,添加JS确认弹出窗口等。这些选项在此处描述:
http://www.yiiframework.com/doc/api/CHtml#clientChange-detail
对于fileField元素,您可以查找$ htmlOptions数组中允许的相关属性here。