WordPress函数 checked() selected() disabled() 与表单操作相关
今天分享几个与表单操作相关的Wordpress函数:checked()、selected()、disabled()。
checked()
介绍
使用在表单的多选checkbox和单选radio按钮中。用于比较两个给定的值(比如,已经保存到数据库的值和表单中的值),如果两个值相同,或者只有 $checked 参数且为真时,添加 checked 属性到当前的多选和单选按钮中。
用法
<?php checked( $checked, $current, $echo ); ?>
参数注解:
$checked 必需,默认为false,用于比较的值,如 已经在数据库中保存的。 $current 可选,默认为true,另外的值(如果不为 true),当前选项的值。 $echo 可选,默认为true,返回结果是输出还是返回字符串。
返回值:(string) HTML 属性 (checked='checked') 或者空的字符串。
实例
对比使用if()函数和checked()函数的不同写法:
//if()写法 <input type='checkbox' name='enable' value='1' <?php if( 1 == $enable_option ) echo 'checked="checked"'; ?> /> 是否开启使用 //checked()写法 <input type="checkbox" name="enable" value="1" <?php checked( $enable_option, 1 ); ?> /> 是否开启使用 //checked()写法变种,先判断是否存在再比较 <input type="checkbox" name="enable" value="1" <?php checked( !$arr || $arr["enable_option"]==1 ); ?> /> 是否开启使用
selected()
介绍
使用在表单的下拉菜单中,用于比较两个给定的值,如果值相同,给当前的选项添加 selected 属性。
用法
<?php selected( $selected, $current, $echo ); ?>
参数注解:
$selected 必需,默认为false,用于比较的值,如 已经在数据库中保存的。 $current 可选,默认为true,另外的值(如果不为 true),当前选项的值。 $echo 可选,默认为true,返回结果是输出还是返回字符串。
返回值:(string) HTML 属性 (selected ='selected') 或者空的字符串。
实例
对比使用if()函数和checked()函数的不同写法:
//if() 写法 <select name="options[foo]"> <option value="1" <?php if( $options['num'] == 1 ) echo 'selected="selected"'; ?>>1</option> <option value="2" <?php if( $options['num'] == 2 ) echo 'selected="selected"'; ?>>2</option> <option value="3" <?php if( $options['num'] == 3 ) echo 'selected="selected"'; ?>>3</option> </select> //selected() 写法 <select name="options[foo]"> <option value="1" <?php selected( $options['num'], 1 ); ?> >1</option> <option value="2" <?php selected( $options['num'], 2 ); ?> >2</option> <option value="3" <?php selected( $options['num'], 3 ); ?> >3</option> </select>
disabled()
介绍
用在表单中的输入框中。用于比较两个给定的值,如果两个值相同,添加 disabled 属性到输入框中。
用法
<?php disabled( $disabled, $current, $echo ); ?>
参数注解:
$disabled 必需,默认为false,用于比较的值,如 已经在数据库中保存的。 $current 可选,默认为true,另外的值(如果不为 true),当前选项的值。 $echo 可选,默认为true,返回结果是输出还是返回字符串。
返回值:(string) HTML 属性 (disabled ='disabled') 或者空的字符串。
源文件
以上三个函数源码所在文件:wp-includes/general-template.php