私はhook_menuを使用して、AJAXアプリケーションからJQUERYを介して呼び出しているリンクを設定しています。私のフックの実装は次のとおりです。
function staff_filter_menu(){
$items = array();
$items['staff/filtering/results/%'] = array(
'page callback' => 'staff_filter_function',
'page arguments' => array(3),
'access callback' => TRUE,
'type' => MENU_CALLBACK,
'delivery callback' => 'staff_filter_deliver',
);
return $items;
}
このリンクは、ユーザーが入力を入力する単純なテキストフィールドである私のajaxアプリの連絡先です。* staff_filter_function *はデータベースを検索し、一致するデータを返します。Ajaxコードは次のとおりです。
$.ajax({
url: Drupal.settings.CALL_BACK + '/' + $(this).val(),
success: function($data){
.... more stuff done here
}
});
それはすべて完全にうまく機能しますが、1つの小さな詳細があります。 すべての結果を表示できるショートカットを許可したいと思います。このショートカットは、単に1つのスペースを入力するだけです。ただし、hook_menuはURLの最後に引数を期待しているため、スペースを入力するたびにajaxリクエストは失敗します。実際のコンテンツを入力すると、完全に機能します。
これは完全を期すためのものであり、機能があるのは素晴らしいことです...誰かがいくつかのアイデアを共有できれば、私は非常に素晴らしいでしょう。