我在drupal php中创建了一个模块然后我创建了一个选择:
<select name="form" id="room">
<option value="0" text="" ><?= t('Select a value')?></option>
<option value="1" text="admin_service_participant"><?= t('Services participants')?> </option>
<option value="2" text="admin_service_candidat"><?=t('Services candidats')?></option>
<option value="3" text="admin_service_nomine"> <?=t('Services nominés')?></option>
<option value="4" text="admin_service_gagnant"><?=t('Services gagnants')?></option>
</select>
<div id="list"></div>
<script>
jQuery(document).ready(function () {
jQuery('#room').change(function () {
var numero = jQuery(this).val();
jQuery.ajax({
url :'<?= url("admin/get-admin-statistique/%")?>',
data: numero,
type: "POST",
success: function (datad) {
jQuery('#list').html(datad);
},
error: function () {
alert("Erreur de récupération");
}
})
});
});
</script>
我有4个模板,我可以在更改时使用ajax加载,我使用1个参数为此方法实现了一个hook_menu:
$items['admin/get-admin-statistique/%'] = array(
'title' => t('Admin Statistiques'),
'page callback' => 'GetStatistique',
'page arguments' => array(1),
'type' => MENU_CALLBACK,
'access callback' => TRUE,
);
和方法:
function GetStatistique($numero){
if($numero==1)
{
return theme('admin_service_candidat',array());
}
elseif ($numero==2)
{
return theme('admin_service_candidat',array());
}
elseif($numero==3)
{
return theme('admin_service_nomine',array());
}
elseif($numero==4)
{
return theme('admin_service_participant',array());
}
}
问题是我的参数是null,$ numero = 0我不知道为什么我的方法Getstatistique没有得到数字
最好的问候。
答案 0 :(得分:0)
尝试这样......
url:Drupal.settings.basePath + 'admin/get-admin-statistique/'+numero
并从您的ajax请求中删除data
。
我认为这可能对你有用。
谢谢,