タグ付けされた質問 「javascript」

Drupalに固有のJavaScriptコードに関する質問に使用してください。

1
drupalブロックモジュールのjquery getまたはpostメソッド
drupal7.xブロックモジュールでjquery getまたはpostメソッドを使用して動的にデータをフェッチすることは可能ですか?私はdrupalの初心者です。 ここに私のevent_calendar.moduleファイルがあります function event_calendar_help($path, $arg) { switch ($path) { case "admin/help#event_calendar": return '<p>'. t("A block module that creates events and lists them in a event calendar") .'</p>'; break; } } /** * Implements hook_block_info(). */ function event_calendar_block_info() { $blocks['event_calendar'] = array( 'info' => t('Event calendar'), 'cache' => DRUPAL_CACHE_PER_ROLE, //Default …
7 7  hooks  blocks  javascript 

3
フォームAPIを使用してjquery.ui.datepickerウィジェットをフォーム要素に添付できますか?
一般的なフォーム要素があります: $form['date'] = array( '#type' => 'textfield', '#title' => t( 'Date' ), ); この要素にjquery ui datepickerを追加したいこと。フォームapiを使用してこれを行う方法はありますか、またはdrupal_add_jsを使用して以下を追加する必要がありますか? $('#edit-date').datepicker(); それとも、もっと良い方法がありますか?
7 7  forms  javascript 

2
Ajax呼び出しでノードを作成するにはどうすればよいですか?
カスタムフォームがモーダルで開かれ、送信時にajax関数を呼び出してRESTサービスにPOSTし、ノードを作成するサイトがあります。 問題は、送信時に「Forbidden」の応答が繰り返し表示されることです。 ログインしたユーザーだけがこれらのajaxリクエストを送信できるようにしたいのですが、authはユーザーごとに異なるトークンにする必要があります。 これが私のコードです: $('#create-node-submit').click(function(e) { e.preventDefault(); var newNode = { _links: { type: { href: 'http://mysite.dev/rest/type/node/article' } }, type: { target_id: 'article' }, title: { value: 'This is a test Article from REST' }, field_description: { value: 'Here is some test description.' } }; getCsrfToken(function (csrfToken) { postNode(csrfToken, newNode); …
7 javascript  ajax  8 

3
オーバーレイでのWebフォームの表示
ボタンをクリックすると、ユーザー定義のWebフォームがオーバーレイにポップアップ表示されます。colorboxおよびcolorbox-nodeモジュールを使用しています。ノード全体を表示できます。しかし、ノード全体ではなくWebフォームだけを表示する方法がわかりません。私は次のコードを使用しました: <a class="colorbox-load" href="enquiry?width=600&height=600&iframe=true"><input value="Send Enquiry" type="submit"> </a>

1
開いているレイヤーマップの表示部分に基づいてビューをフィルター処理する
OpenLayersマップを表示するページがあり、Open Layersデータオーバーレイビューからのデータがフィードされます(ユーザーの場所。場所は、ユーザーアカウント設定の場所のcckフィールドを介して提供されます)。マップのすぐ下に、オーバーレイデータがOpen Layersデータオーバーレイのクローンを使用してリストされます。 現在マップのどの部分が表示されているかに基づいて、リストに表示されているエンティティをフィルタリングする方法はありますか?つまり、マップの別の部分にズームインしたときにリストからエンティティを非表示にする方法はありますか? 例:全体にズームして全世界を表示->すべてのエンティティを表示します。米国にズームし、カリフォルニアのみを表示->カリフォルニアの場所にあるすべてのエンティティを表示します。

1
正しいAJAXプラクティス
「オンラインディスカッション」と呼ばれるコンテンツタイプ(以降、ODと呼ばれます)と「オンラインディスカッション返信」と呼ばれるコンテンツタイプ(以降、ODRと呼ばれます)があります。エンティティ参照(drupal.org/project/entityreference)を相互に持つ。 1つのODRが(フロントエンドのカスタムフォームを介して)作成されると、その「親」(作成されたページのOD)を参照し、対応するエンティティ参照(drupal.org/project/cer)を介して同じことが逆に発生します。 ODのページでは、テーマ設定により、参照されているODRの特定の量(最新の10個)が表示されます。現時点では、ビューやパネルの関与なしにレンダリングされたエンティティとして表示されますが、必要に応じて変更することもできます。 各ODRには返信フォームの独自のインスタンスがあり、引用機能が強化されています。 また、ODRは、カスタムフロントエンドフォームを介して、特定のロールからのコメントを受け入れることもできます。 要求事項: 1)以前の(すべてまたはバッチの)応答をAJAXでロードする方法が必要です。現在、jQuery ajaxコールバックを起動して、それに応じて以前のODRをフェッチするビューページにアクセスし、それらのHTMLをDOMに挿入しています。これは機能しますが、200を超えるノードが参照されるテストケースシナリオでは、しばらく時間がかかるようです 2)一定の時間間隔の後、新しいODRを探し、それらに追加して、ODに「ライブライク」な動作を与える方法が必要です。現時点ではこれを同じ方法で行っていますが、問題なく動作するようです。 3)サイトに来る新しい要素にDrupal Behaviorsを適用して、コンテキストリンクが機能するようにするなどの効率的な方法が必要です。Drupal.attachBehaviors(context);を使用してそれを行いました。しかし、問題があります。 これまでの問題: I.同じページ上の同じフォームの複数のインスタンス。 Drupalは最初のODページのロード時にdrupal_html_id()を処理しますが、AJAXを使用する方法はIDの一意性を壊します。たとえば、初期ロードに10個のフォームがあり、AJAXを介して2個追加すると、全体として生成されたビューのHTMLを取得するため、最初の2個のIDが繰り返されます。 II。「以前のすべてのODRをロードする」ケースでのパフォーマンスの問題。かなり自明です。200以上のエンティティをプルし、それらのHTMLを挿入するのはかなり大変です。 III。Drupal.attachBehaviors-私が説明したようにAJAXを使用すると、コンテキストリンクのHTMLは問題なく生成されます。関係するJavaScriptで問題が発生します。数時間の調査の後、これに関するドキュメントがほとんどないため、私はその問題をかなり解決したDrupal Behaviorsに出会いましたが、対処する新しい一連の問題が発生しました。 onLoadイベントが動作になり、AJAXイベントが発生するたびに実行され、複数のイベントバインディングが発生する(現時点ではバインドソリューションの前にバインド解除) 複数のフォームが使用するテキスト領域の縮小などの一部のonLoadイベントは、使いやすさの問題を引き起こします。たとえば、返信またはコメントを入力すると、定期的なajax呼び出しによって新しいODRがサイトに送信され、テキスト領域が折りたたまれます。 jQueryを介してすべての可能性を確実に処理するためにコードを管理するのはかなり面倒で段階的に困難 それで、最後に、質問: 説明されている望ましい結果を達成するためのDrupalコンテキストのベストプラクティスは何ですか?

5
ページにJavaScriptを追加できません
これを使っていますが、なぜ動かないのかわかりません。 if ($_SERVER['REQUEST_URI'] == '/node/1') { drupal_add_js(drupal_get_path('theme', 'sanskrit').'/sites/all/themes/sanskrit/scripts/jquery-1.4.3.min.js', 'inline'); drupal_add_js('/sites/all/themes/sanskrit/scripts/scripts/jquery.nivo.slider.pack.js'); } 私がやりたいのは、ユーザーがフロントページを表示しているときに特定のJavaScriptファイルを追加することです。

7
Drupal ajax呼び出しが完了したときにJavaScript関数をトリガーするにはどうすればよいですか?
Drupal ajaxが何かをDOMに挿入した後で、追加の処理を行う必要があります。jQueryを使用すると、これは頭の痛いほど単純でしたが、私がDrupal 7でそれを行う方法を理解することはできません。 私のajax化されたリンクに何かを追加しますか?ビヘイビアのアタッチについて何か読みました...混乱が生じています...
7 7  ajax  javascript 

4
ライトボックスにビューノードを表示しますか?
単一の画像によってトリガーされた、ライトボックスのビューからノードを表示する最良の方法は何ですか?アイデアは、素敵な写真がフロントページに表示されるということでしょう。ユーザーがクリックすると、ライトボックス/シックボックス/カラーボックス/ *ボックスでビューが開かれます。これにより、ビュー内のすべてのノードが表示されます。 私は現在、カラーボックスのある画像のみにこれを行うことができますが、キャプションなどを表示したいので十分ではありません。画像だけでなく、フルカラーボックス機能を使用したいと思います。私はiframeを使用してみましたが、これはすべてのノードが完全なサイトテーマ(ヘッダー、ロゴ、フッターなど)で表示されることを意味し、それは私がやりたいことではありません。
7 7  views  javascript 


2
JavaScriptとCSSを特定のメニューページに追加する
Drupal 7のWebサイトをセットアップして、自分で作成したいくつかのカスタムブロックとメニューを用意しました。 DataTables jQueryプラグインを使用して、Drupal以外のPHPスクリプトでユーザー(一部は外部、つまりdrupalテーブルに格納されていない)をテーブルとして表示しています。 このスクリプトをDrupalメニューとして書き直して、http://preferans.de/topとして呼び出せるようにしたいと思います。 my.moduleの内容は次のとおりです。 function my_menu() { $items['top'] = array ( 'title' => 'Top', 'description' => 'Top', 'page callback' => 'my_top_callback', 'access callback' => TRUE, 'file' => 'my.top.inc', 'file path' => drupal_get_path('module', 'my'), 'type' => MENU_CALLBACK, ); return $items; } my.top.incの内容は次のとおりです。 function my_top_callback() { return array ( 'top_table' …
7 7  javascript 

4
JavaScriptへの値の送信
Drupalでフォームのテーマハンドラーを設定しました。このハンドラーにはテンプレートファイルがあります。そのインクルードファイルでPHPからJavaScriptに値を送信する最も簡単な方法は何ですか?

2
フロントページのみのライブラリーのロード
サイトのホームページにのみJavaScriptをロードしたい。この前処理関数を見つけましたが、ホームページ用にカスタマイズする方法がわかりません。 function mytheme_preprocess_maintenance_page(&$variables) { $variables['#attached']['library'][] = 'mytheme/cuddly-slider'; } 私は当初、必要なライブラリをサイトのすべてのページに含めていましたが、ホームページにのみ必要なので、これを理解する必要があります。 もともとは.info.ymlファイルに次のようにありました: libraries: - 'themename/library' どんな助けでもありがたいです。
6 8  javascript 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.