TEL:400-8793-956
当前位置:程序、服务器

Drupal中的Ajax

提问者: 近期获赞: 浏览人数: 发布时间:2021-01-11 10:40:21

 问:如何在drupal中添加ajax,当我输入学生姓名时,应该显示学生详细信息而不加载页面, 

 
 
答:输入学生姓名后,调用javascript函数执行ajax调用,然后设置将接收AJAX回调的元素,例如:
 
<div id =“ ajax-target”> Ajax在这里!!! </ div>
之后转到自定义代码:
 
1->创建一个JavaScript函数,该函数将使用jQuery.load()处理该调用。路径中的$ nid只是一个例子。它可以是任何变量。
 
<脚本>
        函数myModule&#95; ajax&#95; load(name){
          jQuery(“#ajax-target”)。load(“ / node / ajax /” + name);
        }
    </ script>
注意:请使用_代替&#95;。在上面的代码中
 
 
 
在自定义模块中编写代码:
 
2->通过实现hook_menu(),注册将呈现HTML的URL:
 
    函数myModule_menu(){
        $ items ['node / ajax /%'] = array(
            '页面回调'=>'myModule_ajax_get_ajax',//渲染HTML。
            '页面参数'=> array(2),
            '类型'=> MENU_CALLBACK,
            '访问参数'=> array('访问内容'),
            'delivery callback'=>'myModule_ajax_callback',//魔术在这里。
        );
        返回$ items;
    }
 
 
 
3->创建页面回调和传递回调函数:
 
函数myModule_ajax_get_ajax($ nid){
        //您可以返回所需的任何内容,包括表格。
        $ node = node_load($ nid);
        返回node_view($ node,'teaser');
    }
 
    函数myModule_ajax_callback($ page_callback_result){
        //只渲染内容
        $ content = drupal_render($ page_callback_result);
 
        //添加CSS和JS文件,添加一些html
        $ html =''。drupal_get_css()。drupal_get_js()。''。$ content。'';
        打印$ html;
 
        //执行请求结束任务。
        drupal_page_footer();
    }
上一篇: Microsoft Security Essentials是否可以正确扫描并保护系统免受病毒侵害?
下一篇: 最佳游戏云后端