国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

drupal創建拖動排序表格的方法

2024-08-30 19:07:45
字體:
來源:轉載
供稿:網友

Drupal中,有許多用戶界面采用了拖動排序的功能。在排序的界面上,拖動排序是一種比較友好的形式。
下面是一個例子。

1. 在hook_menu里定義一個menu

//欄目下,節點排序界面,可以拖動行來排序 $items['admin/nodeorder_taxonomy/term/%taxonomy_term/nodeorder'] = array ( 'title' => '節點排序', 'page callback' => 'drupal_get_form', 'page arguments' => array('nodeorder_taxonomy_term_nodeorder_form',3), 'access callback' => '_nt_node_order_right', 'access arguments' => array(3), 'type' => MENU_LOCAL_TASK, );

2.在hook_theme里定義表單的theme方法

function my_module_theme() {
return array( 'nodeorder_taxonomy_term_nodeorder_form' => array( 'render element' => 'form', ), );
}

3.定義表單。表單的定義與一般表單基本一樣。這里用$form['nodes']存儲了表格里需要的數據,用$form['nodes'][$count]表示一行。但是對于tabledrag來說,這不是必須的。

function nodeorder_taxonomy_term_nodeorder_form(&$form,&$form_state,$term) {
$tid=$term->tid; $query=db_select('node_term_order','nto')->extend('PagerDefault')->limit(20);
$query->join('node','n','nto.nid = n.nid');
$query->fields('n',array('nid','title','created')) ->fields('nto',array('tid','node_order')) ->condition('nto.tid',$tid) ->condition('sticky_order',0,'<=') ->orderBy('sticky_order','desc') ->orderBy('nto.node_order', 'desc');
$result=$query->execute();
$form['term_name']=array("#markup" => $term->name);
$form['nodes']['#tree']=true;
$form['nodes']['#theme'] = 'theme_nodeorder_taxonomy_term_nodeorder_form';
$delta=20*5; $count=0;
$form['foreactions'] = array('#type' => 'actions');
$form['foreactions']['submit'] = array('#type' => 'submit', '#value' => t('Save changes'));
foreach ($result as $row) { $form['nodes'][$count]['title']=array('#markup' => "nid)."">".check_plain($row->title)."" );
$form['nodes'][$count]['created']=array('#markup' => date("Y-m-d H:i:s",$row->created));
$form['nodes'][$count]['nid']=array( '#type'=>'value', '#title_display' => 'invisible', '#value' => $row->nid, );
$form['nodes'][$count]['tid']=array( '#type'=>'value', '#title_display' => 'invisible', '#value' => $row->tid, );
$form['nodes'][$count]['node_order']=array( '#type' => 'value', '#title_display' => 'invisible', '#value' => $row->node_order, );
$form['nodes'][$count]['weight'] = array( '#type' => 'weight', '#delta' => $delta, '#title_display' => 'invisible', '#default_value' => $count, '#title' => t('Weight for @title', array('@title' => $row->title)), );
$count +=1; } $form['actions'] = array('#type' => 'actions');
$form['actions']['submit'] = array('#type' => 'submit', '#value' => t('Save changes'));
return $form;
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 娄底市| 南开区| 全南县| 文水县| 怀集县| 泽普县| 秦安县| 泸西县| 余干县| 灌云县| 临沭县| 正蓝旗| 邓州市| 尼勒克县| 广昌县| 屏南县| 泗水县| 永州市| 杭州市| 隆尧县| 麦盖提县| 资源县| 兴宁市| 定日县| 铜梁县| 大化| 鹤壁市| 嘉义县| 永和县| 永定县| 上饶县| 休宁县| 丰县| 安福县| 大悟县| 团风县| 团风县| 巴塘县| 拜城县| 梓潼县| 太原市|