0

这将是 Drupal 7 中最简单的功能问题。下面提到的事情是强制性的,不能改变功能。1)我在模块中创建了一个自定义块。2) 我已包含如下表格:-

function usercontent_block_view($delta='') 
{

   $block = array();    
   switch($delta)
   {
     case 'user_front_page' :        
       $block['content'] = drupal_get_form('genre_all_login');                       
     break;
   }
   return $block; 
}

3)现在我有一些其他内容在块中,但给我带来了麻烦如下所示: -

function genre_all_login($form) {
  $form['new_user'] = array(
  '#type' => 'item',
  '#markup' => l('Add New User','http://www.google.com'),            
    );
    return $form; 
  }

4)所以它包含一个链接,一旦点击,我就会转到谷歌。5)现在我想在用户导航到 Google 之前验证块内的某些内容。因此,如果条件不匹配,那么我将通过显示错误消息来阻止用户,因此用户无法遍历到 Google。

请告诉我是否有可能或者我应该使用不同的技术来处理这种情况。

4

1 回答 1

0

您可以设置#markup如下:

l('Add New User','http://www.google.com', array('attributes' => array('class' => 'validate_with_js') ))

然后你可以写一段 JavaScript 代码来验证:

jQuery(document).ready(function() {
    jQuery('.validate_with_js').click(function() {
        // Your Validation Cdoe. You can use AJAX here if you need to validate through PHP.
    });
});

如果您想在提交表单后进行验证,那么您可以使用#element_validate.

于 2013-07-07T07:06:09.327 回答