跳转到主要内容
cfphper 提交于 15 July 2014

今天想让支付宝的支付页面表单(submit)提交后在新的窗口中打开!于是乎先试了试'#attributes'=array('target' => '_blank')

  $form['submit'] = array(     '#type' => 'submit',     '#value' => '',

    '#attributes'=array('target' => '_blank'),

  );

  接下来的事情就惹哥生气了,上面的写法不能在新的窗口中打开,于是找百度和google帮忙。搜了好长时间都没有相关的内容。

  还是静下来自己想想该怎么做吧,自己动手丰衣足食,于是把代码改成:

function uc_alipay_xxx_form($form, $form_state) {   $form['submit'] = array(     '#type' => 'submit',     '#value' => '',   );   $form['submit']['#attributes']=array('target' => '_blank');   return $form; }

还不行,脑袋顿时短路了,还是去找高手帮忙吧!于是找到了drupal中国管理员“龙马大哥”帮忙。他很热情的给我说前几天“猎人”刚分享过。他就把相关代码提交给我:

D7 form APi 提交在新页面打开 $form['#attributes'] = array('target' => '_blank');

于是问题迎刃而解,我写错了!

我错误的写法:$form['submit']['#attributes']=array('target' => '_blank');

正确的写法应该为:$form['#attributes'] = array('target' => '_blank');

总结自己存在的问题:对drupal表单还有不深刻的认识,还得认真学习drupal表单的用法。

参考地址:http://it.paituwang.com/node/133

 
Drupal 版本