欢迎各位兄弟 发布技术文章
这里的技术是共享的
if ($form_state['clicked_button']['#value'] == '删除') {//假如是删除按钮,就不验证了
return;
}
在Drupal表单中存在多个按钮,如何判断是哪一个按钮进行了提交?本文主要介绍Drupal表单提交时存在多个按钮的问题。
方法一:通过$form_state['values']['op']获取button的Value值,这个方法最常见。
if($form_state['values']['op'] == t(‘Button 1′)){
// Button 1 Clicked
}
else if($form_state['values']['op'] == t(‘Button 2′)){
// Button 2 Clicked
}
方法二:通过$form_state['triggering_element']['#按钮属性']来获取匹配哪个按钮被点击了,$form_state['clicked_button']['#按钮属性']方法已被Drupal 7 弃用。
if($form_state['values']['ok'] ==$form_state['triggering_element']['#value']){
//Process if OK is pressed
}
else if($form_state['values']['cancel'] == $form_state['triggering_element']['#value']) {
//Process if Cancel is pressed
}
这个问题会在Drupal 表单存在多个按钮时发生异常,Drupal只能获取到第一个按钮,而不是点击的那个按钮。
(...)
Read the rest of Drupal 判断表单多个按钮提交 (9 words)