Class yii\widgets\ActiveField

所有类 | 属性 | 方法

继承yii\widgets\ActiveField » yii\base\Component » yii\base\Object
可用自版本2.0

ActiveField代表一个表单输入字段在一个 yii\widgets\ActiveForm小部件.

更多的细节和在 ActiveField 上的使用信息,请参阅在窗体上的指南文章。

公共属性

隐藏继承属性

属性类型描述定义在
$addAriaAttributesboolean增加了咏叹调aria-required和aria-invalid输入HTML属性yii\widgets\ActiveField
$attributestring这个领域的模型属性是相关联的。yii\widgets\ActiveField
$enableAjaxValidationboolean是否AJAX-based data to enable验证。yii\widgets\ActiveField
$enableClientValidationboolean是否启用客户端数据验证。yii\widgets\ActiveField
$errorOptionsarray默认选项错误的标签。yii\widgets\ActiveField
$formyii\widgets\ActiveForm这个字段相关联的形式。yii\widgets\ActiveField
$hintOptionsarray默认选项的提示标签。yii\widgets\ActiveField
$inputOptionsarray输入标签的默认选项yii\widgets\ActiveField
$labelOptionsarray的默认选项标签标记。yii\widgets\ActiveField
$modelyii\base\Model这个字段相关联的数据模型。yii\widgets\ActiveField
$optionsarray字段的HTML属性(名称-值对)容器标签。yii\widgets\ActiveField
$partsarray场的不同部分(如输入、标签)。yii\widgets\ActiveField
$selectorsarrayjQuery选择器选择容器,标签输入和错误yii\widgets\ActiveField
$templatestring用于安排标签的模板,输入字段,错误信息,并提示文本。yii\widgets\ActiveField
$validateOnBlurboolean木材制裁是否审定之loses focus field输入。yii\widgets\ActiveField
$validateOnChangeboolean是否执行验证当输入字段的值被改变了。yii\widgets\ActiveField
$validateOnTypeboolean是否执行验证在用户键入的输入字段yii\widgets\ActiveField
$validationDelayinteger的毫秒数,验证应该延迟当用户类型字段和$validateOnType设置是正确的。yii\widgets\ActiveField

公共方法

隐藏继承方法

方法描述定义在
__toString()PHP魔术方法返回该对象的字符串表示。yii\widgets\ActiveField
begin()呈现的开始标记中的域容器。yii\widgets\ActiveField
checkbox()呈现一个复选框。yii\widgets\ActiveField
checkboxList()呈现一个复选框列表。yii\widgets\ActiveField
dropDownList()显示一个下拉列表。yii\widgets\ActiveField
end()呈现关闭标签的容器。yii\widgets\ActiveField
error()生成一个标记,它包含第一个 $attribute.的验证错误。yii\widgets\ActiveField
fileInput()呈现一个文件输入。yii\widgets\ActiveField
hiddenInput()呈现一个隐藏的输入。yii\widgets\ActiveField
hint()呈现提示标签。yii\widgets\ActiveField
input()呈现一个输入标签。yii\widgets\ActiveField
label()生成一个标签标记属性.yii\widgets\ActiveField
listBox()呈现一个列表框。yii\widgets\ActiveField
passwordInput()呈现一个密码输入。yii\widgets\ActiveField
radio()呈现一个单选按钮yii\widgets\ActiveField
radioList()呈现一个单选按钮列表.yii\widgets\ActiveField
render()使整个领域。yii\widgets\ActiveField
textInput()呈现一个文本输入。yii\widgets\ActiveField
textarea()显示一个文本区域。yii\widgets\ActiveField
widget()呈现一个小部件的输入字段yii\widgets\ActiveField

受保护的方法

隐藏继承方法

方法描述定义在
addAriaAttributes()将aria属性添加到输入选项yii\widgets\ActiveField
adjustLabelFor()调整基于输入的属性标签选项。yii\widgets\ActiveField
getClientOptions()返回的JS选项字段。yii\widgets\ActiveField
getInputId()返回的HTML id这个表单字段的输入元素yii\widgets\ActiveField
isAjaxValidationEnabled()检查验证ajax支持yii\widgets\ActiveField
isClientValidationEnabled()检查客户端验证支持yii\widgets\ActiveField

属性详情

$addAriaAttributes public property (可用自版本 2.0.11)

增加了咏叹调aria-required和aria-invalid输入HTML属性

public boolean $addAriaAttributes = true

$attribute public property

这个领域的模型属性是相关联的。

public string $attribute = null

$enableAjaxValidation public property

据验证。如果没有设置,它的值将yii\widgets\ActiveForm::$enableAjaxValidation

public boolean $enableAjaxValidation = null

$enableClientValidation public property

是否启用客户端数据验证。如果没有设置,它的值将 yii\widgets\ActiveForm::$enableClientValidation.

public boolean $enableClientValidation = null

$errorOptions public property

用于错误标签的默认选项。传递给 error() 的参数要与此属性合并,当呈现错误标记。识别下列特殊选项︰

  • 标签:标签容器元素的名称。默认为div。将它设置为false不会呈现一个容器标签。参见yii \助手\ Html:标记()。
  • 编码:是否编码错误输出。默认值为true。

如果你设置一个自定义错误元素的id,您可能需要相应地调整美元的选择器。

参见 yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.

public array $errorOptions = ['class' => 'help-block']

$form public property

这个字段相关联的形式。

public yii\widgets\ActiveForm $form = null

$hintOptions public property

默认选项的提示标签。参数传递给提示()将合并这个属性在呈现提示标签。确认以下特殊选项:

  • 标签容器元素的名称。默认为div。将它设置为false不会呈现一个容器标签。参见 yii\helpers\Html::tag().

参见 yii\helpers\Html::renderTagAttributes() 属性是如何被呈现的细节。

public array $hintOptions = ['class' => 'hint-block']

$inputOptions public property

输入标签的默认选项。参数传递给个人输入方法(例如textInput())将会与这个属性合并在呈现输入标签。

如果你设置一个自定义输入元素的id,您可能需要相应地调整$selectors选择器。

参见 yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.

public array $inputOptions = ['class' => 'form-control']

$labelOptions public property

的默认选项标签标记。参数传递给标签()将与这个属性合并在呈现标签标记。

参见 yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.

public array $labelOptions = ['class' => 'control-label']

$model public property

这个字段相关联的数据模型。

public yii\base\Model $model = null

$options public property

字段的HTML属性(名称-值对)容器标签。的值将使用yii\helpers\Html::encode()。如果一个值是null,相应的属性将不会呈现。确认以下特殊选项:

  • 标签:标签容器元素的名称。默认为div。将它设置为false不会呈现一个容器标签。参见y yii\helpers\Html::tag().

如果你设置一个自定义的容器元素的id,您可能需要相应地调整美元的选择器。

参见 yii\helpers\Html::renderTagAttributes() for details on how attributes are being rendered.

public array $options = ['class' => 'form-group']

$parts public property

场的不同部分(如输入、标签)。这将是与美元一起使用模板来生成最终的HTML代码。键是令牌名称模板美元,而值对应的HTML代码。有效的标记包括{输入},{标签}和{错误}。请注意,您通常不需要直接访问该属性是由这个类的各种方法。

public array $parts = []

$selectors public property

jQuery选择器选择容器,标签输入和错误。数组的键应该是容器,输入,和/或错误,数组值对应的选择器。例如,['输入' = > ' #我的输入']。

容器使用选择器的背景下形式,而输入和错误选择器使用容器的背景下。

你通常不需要设置该属性为默认选择器应该为大多数情况下工作得很好。

public array $selectors = []

$template public property

用于安排标签的模板,输入字段,错误信息,并提示文本。下面的标记将被替换时呈现():{标签},{输入},{错误}和{提示}。

public string $template = "{label}\n{input}\n{hint}\n{error}"

$validateOnBlur public property

是否输入框失去焦点时执行验证。如果没有设置,它的值将 yii\widgets\ActiveForm::$validateOnBlur.

public boolean $validateOnBlur = null

$validateOnChange public property

是否执行验证当输入字段的值被改变了。如果没有设置,它的值将 yii\widgets\ActiveForm::$validateOnChange.

public boolean $validateOnChange = null

$validateOnType public property

是否执行验证在用户键入的输入字段。如果没有设置,它的值将yii\widgets\ActiveForm::$validateOnType.

参见 $validationDelay.

public boolean $validateOnType = null

$validationDelay public property

的毫秒数,验证应该延迟当用户类型字段和美元validateOnType设置是正确的。如果没有设置,它的值将 yii\widgets\ActiveForm::$validationDelay.

public integer $validationDelay = null

方法详情

__toString() public 方法

PHP魔术方法返回该对象的字符串表示。

public string __toString ( )
returnstring

The string representation of this object.

addAriaAttributes() protected 方法 (可用自版本 2.0.11)

将aria属性添加到输入选项

protected void addAriaAttributes ( &$options )
$options 

Array input options

adjustLabelFor() protected 方法

调整基于输入的属性标签选项。

protected void adjustLabelFor ( $options )
$optionsarray

The input options.

begin() public 方法

显示字段的开始标记的容器。

public string begin ( )
returnstring

The rendering result.

checkbox() public 方法

呈现一个复选框。

这个方法将根据默认属性checked tag generate the value model to the默认属性。

public $this checkbox ( $options = [], $enclosedByLabel = true )
$optionsarray

The tag options in terms of The name - value pairs. The following options are specially handled:

  • 取消:字符串,与之关联的值取消选中单选按钮的状态。如果没有设置,那么将默认值0。该方法将呈现一个隐藏的输入,这样如果单选按钮没有检查和提交,该属性的值仍将通过隐藏输入提交给服务器。如果你不想要任何隐藏的输入,你应该明确地将此选项设置为null。
  • 标签:字符串,一个标签显示旁边的复选框。它不会HTML-encoded。因此你可以通过在HTML代码,比如一个图像标记。如果这是来自最终用户,你应该yii \助手\ Html::编码(),以防止XSS攻击。指定这个选项时,复选框将被封闭的一个标签标记。如果你不希望任何标签,你应该明确地将此选项设置为null。
  • labelOptions:数组,HTML属性标签标记。这只是时使用指定的标签选项

其余的选项将呈现为属性的标记。的值将使用 yii\helpers\Html::encode()。如果一个值是null,相应的属性将不会呈现。

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

$enclosedByLabelboolean

是否要附上标签内的复选框。如果情况属实,该方法仍然使用美元模板布局复选框和复选框的错误消息,除了由标签附上标签。

return$this

对象本身

checkboxList() public 方法

Renders a list of checkboxes.

允许多个复选框列表选择,如列表框()。结果,提交相应的值是一个数组。复选框的选择列表取自模型属性的值。

public $this checkboxList ( $items, $options = [] )
$itemsarray

用于生成的数据项的复选框。数组值的标签,而数组键值对应的复选框

$optionsarray

选项(name = >配置)的复选框列表。可用选项的列表请参考选项参数yii \助手\ Html:美元:activeCheckboxList()。

return$this

The field object itself.

dropDownList() public 方法

显示一个下拉列表。

选择下拉列表取自模型属性的值。

public $this dropDownList ( $items, $options = [] )
$itemsarray

选择数据项。数组键选项值,数组值对应的选项标签。数组也可以嵌套(即一些数组值数组)。对于每个赋,一群选项将生成的标签是与赋的关键。如果你有一个数据模型的列表,你可以将其转换为上述格式使用 yii\helpers\ArrayHelper::map().

注意,和标签的值将自动HTML-encoded通过这种方法,和空格的标签也将HTML-encoded。

$optionsarray

标签选项的名称-值对。

可用选项的列表请参考选项参数yii\helpers\Html::activeDropDownList().

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

对象本身。

end() public 方法

对象本身。

public string end ( )
returnstring

呈现的结果.

error() public 方法

生成一个标记,它包含第一个$attribute的验证错.

注意,即使没有验证错误,这种方法仍将返回一个空的错误标记。

参见 $errorOptions.

public $this error ( $options = [] )
$optionsarray|false

标签选项的名称-值对。它将与$errorOptions.合并。选项将呈现为结果的属性标签。的值将使用yii HTML-encodedyii\helpers\Html::encode()。如果这个参数是错误的,没有错误标签将会呈现。

以下选项是专门处理:

  • 标签:这指定标记名称。如果没有设置,将使用div。参见 yii\helpers\Html::tag().

如果你设置一个自定义错误元素的id,您可能需要调整$selectorsaccordingly.

return$this

对象本身。

fileInput() public 方法

Renders a file input.

该方法将自动生成标记属性的 name 和value 为模型中显式指定属性,除非他们选择$options

public $this fileInput ( $options = [] )
$optionsarray

标签选项的名称-值对。这些将会呈现为属性的标记。的值将使用 yii\helpers\Html::encode().

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

The field object itself.

getClientOptions() protected 方法

返回的JS选项字段。

protected array getClientOptions ( )
returnarray

JS选项。

getInputId() protected 方法 (可用自版本 2.0.7)

返回的HTML id这个表单字段的输入元素。

protected string getInputId ( )
returnstring

输入id

hiddenInput() public 方法

呈现一个隐藏的输入

注意,这个方法是提供完整性。在大多数情况下,因为你不需要验证一个隐藏的输入,你应该不需要使用这种方法。相反,您应该使用yii\helpers\Html::activeHiddenInput().

该方法将自动生成标记属性的name 和value 为模型中显式指定属性,除非他们 $options.。

public $this hiddenInput ( $options = [] )
$optionsarray

标记选项的名称-值对。这些将呈现为所生成的标记的属性。值将使用 yii\helpers\Html::encode().

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

对象本身。

hint() public 方法

呈现提示标签。

public $this hint ( $content, $options = [] )
$contentstring|boolean

提示内容。如果为空,提示通过yii\base\Model::getAttributeHint().。如果错误,生成的字段不包含提示部分。注意,这不会yii\helpers\Html::encode().

$optionsarray

标签选项的名称-值对。这些将会呈现的属性提示标签。的值将使用 yii\helpers\Html::encode().

以下选项是专门处理:

  • 标签︰ 这指定的标记名称。如果未设置,将使用 div。湖这么 yii\helpers\Html::tag().
return$this

The field object itself.

input() public 方法

呈现一个输入标签。

public $this input ( $type, $options = [] )
$typestring

The input type (e.g. textpassword)

$optionsarray

标签选项的名称-值对。这些将会呈现为属性的标记。的值将使用

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

The field object itself.

isAjaxValidationEnabled() protected 方法 (可用自版本 2.0.11)

检查验证ajax支持

protected boolean isAjaxValidationEnabled ( )

isClientValidationEnabled() protected 方法 (可用自版本 2.0.11)

检查客户端验证支持

protected boolean isClientValidationEnabled ( )

label() public 方法

生成一个标签标记$attribute.

public $this label ( $label = null, $options = [] )
$labelnull|string|false

要使用的标签。如果是null,将生成的标签通过yii \基地\模型::getAttributeLabel()。如果错误,生成的字段不包含标签的部分。注意,这不会 yii\helpers\Html::encode().

$optionsnull|array

他标记选项的名称-值对。它将与$labelOptions.合并。选项将呈现为结果的属性标签。的值将使用yii HTML-encoded yii\helpers\Html::encode()。如果一个值是null,相应的属性将不会呈现。

return$this

The field object itself.

listBox() public 方法

Renders a list box.

列表框的选择是取自模型属性的值。

public $this listBox ( $items, $options = [] )
$itemsarray

选择数据项。数组键选项值,数组值对应的选项标签。数组也可以嵌套(即一些数组值数组)。对于每个赋,一群选项将生成的标签是与赋的关键。如果你有一个数据模型的列表,你可以将其转换为上述格式使用 yii\helpers\ArrayHelper::map().

注意,和标签的值将自动HTML-encoded通过这种方法,和空格的标签也将HTML-encoded。

$optionsarray

标签选项的名称-值对。

可用选项的列表请参考选项参数 $options parameter of yii\helpers\Html::activeListBox().

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

The field object itself.

passwordInput() public 方法

呈现一个密码输入

这个方法将generate标签属性名称和值automatically模型属性的,除非他们是explicitly作为元。。

public $this passwordInput ( $options = [] )
$optionsarray

标签选项的名称-值对。这些将会呈现为属性的标记。的值将使用 yii\helpers\Html::encode().

如果你设置一个自定义输入元素的id,您可能需要调整 $selectorsaccordingly.

return$this

The field object itself.

radio() public 方法

呈现一个单选按钮

这种方法将生成检查标签属性模型根据属性值。

public $this radio ( $options = [], $enclosedByLabel = true )
$optionsarray

标签选项的名称-值对。以下选项是专门处理:

  • 取消:字符串,与之关联的值取消选中单选按钮的状态。如果没有设置,那么将默认值0。该方法将呈现一个隐藏的输入,这样如果单选按钮没有检查和提交,该属性的值仍将通过隐藏输入提交给服务器。如果你不想要任何隐藏的输入,你应该明确地将此选项设置为null。
  • 标签:字符串,一个标签显示旁边的单选按钮。它不会HTML-encoded。因此你可以通过在HTML代码,比如一个图像标记。如果这是来自最终用户,你应该yii \助手\ Html::编码(),以防止XSS攻击。指定这个选项时,单选按钮将被封闭的一个标签标记。如果你不希望任何标签,你应该明确地将此选项设置为null。
  • labelOptions︰ 数组、 标签标记的 HTML 属性。这只用指定的标签选项时。

其余的选项将呈现为属性的标记。的值将使用yii HTML-encoded \助手\ Html::编码()。如果一个值是null,相应的属性将不会呈现。

如果你设置一个自定义输入元素的id,您可能需要调整$selectorsaccordingly.

$enclosedByLabelboolean

是否要附上标签内的广播。如果情况属实,该方法仍将使用美元模板布局单选按钮和错误消息除了收音机是封闭的标签标记。

return$this

The field object itself.

radioList() public 方法

呈现单选按钮的列表。

单选按钮列表就像一个复选框列表,除了它只允许单选择。单选按钮的选择是取自模型属性的值。

public $this radioList ( $items, $options = [] )
$itemsarray

用于生成的数据项单选按钮。数组值的标签,而数组键对应的电台值。

$optionsarray

选择单选按钮(name = >配置)的列表。可用选项的列表请参考选项参数 yii\helpers\Html::activeRadioList().

return$this

The field object itself.

render() public 方法

使整个领域。

这种方法将生成标签,错误的标签,输入标签,提示标记(如果有的话),然后将它们组装成根据美元HTM $template.

public string render ( $content = null )
$contentstring|callable

字段中的内容容器。如果空(没有设置),默认的方法将调用生成标签,标签和输入标签错误,并使用它们的内容。如果一个可调用,它将被称为生成内容。可赎回的签名应该是:

function ($field) {
    return $html;
}
returnstring

The rendering result.

textInput() public 方法

呈现文本输入.

该方法将自动生成标记属性的名称和值为模型中显式指定属性,除非他们 $options.

public $this textInput ( $options = [] )
$optionsarray

标签选项的名称-值对。这些将会呈现为属性的标记。的值将使用yii HTML-encoded yii\helpers\Html::encode().

确认以下特殊选项:

  • 最大长度:int | bool,当最大长度设置真实模型属性由一个字符串验证器验证,最大长度选项的值将 yii\validators\StringValidator::$max.。这是2.0.3版中。

请注意,如果您设置一个自定义输入元素的id,您可能需要调整相应的美元的价值选择器。

return$this

The field object itself.

textarea() public 方法

显示一个文本区域。

模型属性值将被用作文本区域中的内容

public $this textarea ( $options = [] )
$optionsarray

标签选项的名称-值对。这些将会呈现为属性的标记。的值将使用yii HTML-encoded yii\helpers\Html::encode().

如果你设置一个自定义id文本区域的元素,您可能需要调整$selectorsaccordingly.

return$this

对象本身。

widget() public 方法

呈现一个小部件的输入字段。

注意,小部件必须有两个模型和属性。他们将初始化模型和属性美元这一领域,分别。

如果你想使用一个小部件没有模型和属性,请使用render() 渲染

例如使用 yii\widgets\MaskedInput小部件来得到一些日期输入,您可以使用下面的代码,$form形式yii\widgets\ActiveForm小部件实例:

$form->field($model, 'date')->widget(\yii\widgets\MaskedInput::className(), [
    'mask' => '99/99/9999',
]);

如果你设置一个自定义输入元素的id,您可能需要相应地调整美元的选择器。

public $this widget ( $class, $config = [] )
$classstring

小部件类的名称。

$configarray

名称-值对将用于初始化小部件.

return$this

对象本身。

转载于:https://my.oschina.net/u/3359744/blog/859847

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值