在移动到不同位置之前验证l()

时间:2013-07-06 15:59:06

标签: drupal-7 hyperlink block form-api

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

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

1 个答案:

答案 0 :(得分: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

相关问题