Zac*_*ach 16 javascript css php forms drupal-7
我需要在Drupal 7中为水平登录表单设置一个占位符.单击时该文本需要消失.他们只会说"用户名"和"密码".这是截至目前的表单代码.谢谢!
function horizontal_login_block($form) {
$form['#action'] = url($_GET['q'], array('query' => drupal_get_destination()));
$form['#id'] = 'horizontal-login-block';
$form['#validate'] = user_login_default_validators();
$form['#submit'][] = 'user_login_submit';
$form['#prefix'] = '<div id="loginbar">';
$form['#suffix'] = '</div>';
$form['name'] = array(
'#type' => 'textfield',
'#prefix' => '<div class="usericon">',
'#suffix' => '</div>',
'#maxlength' => USERNAME_MAX_LENGTH,
'#default_value' => t('Username'),
'#id' => 'userbar',
'#size' => 15,
'#required' => TRUE,
);
Run Code Online (Sandbox Code Playgroud)
Aye*_*h K 24
这是使用占位符HTML属性在HTML5中执行此操作的方法.但是,它不适用于任何Internet Explorer版本.
function horizontal_login_block($form) {
$form['#action'] = url($_GET['q'], array('query' => drupal_get_destination()));
$form['#id'] = 'horizontal-login-block';
$form['#validate'] = user_login_default_validators();
$form['#submit'][] = 'user_login_submit';
$form['#prefix'] = '<div id="loginbar">';
$form['#suffix'] = '</div>';
$form['name'] = array(
'#type' => 'textfield',
'#prefix' => '<div class="usericon">',
'#suffix' => '</div>',
'#maxlength' => USERNAME_MAX_LENGTH,
/* Don't set default values. HTML5
'#default_value' => t('Username'), */
'#id' => 'userbar',
'#size' => 15,
'#required' => TRUE,
'#attributes' =>array('placeholder' => t('Username'))
);
Run Code Online (Sandbox Code Playgroud)
Rai*_*sch 22
另一种简单的方法是将此函数添加到主题template.php:
function YOURTHEMENAME_form_alter( &$form, &$form_state, $form_id )
{
if (in_array( $form_id, array( 'user_login', 'user_login_block')))
{
$form['name']['#attributes']['placeholder'] = t( 'Username' );
$form['pass']['#attributes']['placeholder'] = t( 'Password' );
}
}
Run Code Online (Sandbox Code Playgroud)
这会将HTML5占位符添加到两个登录表单中的"用户名"和"密码"字段中.
别忘了更改函数名称的开头!
玩得开心!