欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

模块 drupal_add_js 赋予变量 给js 有大用


看下 multi_node_add  批量增加节点模块

在 multi_node_add.module  模块中 

image.png

drupal_add_js(drupal_get_path('module', 'multi_node_add') .'/multi_node_add.js');

$prefilled = FALSE;
if (isset($_GET['fields']) && isset($_GET['num'])) {
 drupal_add_js(
   array(
     'multi_node_add_preload' => array(
       'fields' => explode(',', $_GET['fields']),
       'num' => $_GET['num'],
       'field_xnzbt_start_time_value' => $_GET['field_xnzbt_start_time_value'],
     )),
   'setting'
 );
 $prefilled = TRUE;
}


image.png




在 multi_node_add.js   文件中 

function multi_node_add_show_forms(numForms) {
if (numForms < 1) {
throw "Number of forms must be non-zero";
}
for (var i = 0; i < numForms; i++) {
var fields = '';
if (Drupal.settings.multi_node_add_preload) {
fields = Drupal.settings.multi_node_add_preload.fields; // 这里就得到了在模块中赋予的值

   
}
else {
fields = multi_node_add_fields();
}
$("#multi_node_add_frames").append('<div><iframe class="autoHeight" width="100%" name="node_' + (multi_node_add_NumNode++) + '" src="' + Drupal.settings.multi_node_add.callback + '/' + fields + '"></iframe></div>');
}
multi_node_add_doIframe();
}




普通分类: