CiviCRMでドロップダウンリストを選択したときにJQueryイベントをトリガする方法は?

JavaScriptが正しくトリガーされましたが、CiviCRMのドロップダウンリストのイベントには追加できません。

実際の選択要素のIDは “custom_385_14″です。

私はCiviCRMのドロップダウンリストにイベントを添付しようとしています。これは、アクティビティの
“Subject”フィールドにドロップダウンリストの値を入力します。

実際の入力要素は、リスト値が変更されたときに変更イベントをトリガーしないようです。私は以下を試した: –

$("#custom_385_14").change(function() {
            alert('test!');
           $("#subject").val($("#custom_385_14").val());
        });

******* UPDATE ********* だからJon
GはChosenがライブラリではなくSelect2であることを指摘しています。彼らのドキュメントによると: https://select2.org/programmatic-control/events
#リスニング・フォー・イベント
私は以下を使用するべきです:

  $('#custom_385_14').on('select2:select', function (e) {
      alert('changed!');
  });

しかし、これはまだイベントを引き起こしていません。

I have searched the developer docs for civi and couldn’t find an
example of this, just a link to the Select2 docs here: https://docs.civicrm.org/dev/en/latest/framework/quickform/entityref/#select2

HTML Source below for the <td> containing the
select list:-

 <td class="html-adjust">
      <div class="select2-container crm-select2 crm-form-select select2-allowclear" id="s2id_custom_385_14" style="width: 200px;">   standard <input class="select2-focusser select2-offscreen" type="text" aria-haspopup="true" role="button" aria-labelledby="select2-chosen-9" id="s2id_autogen9"></div> 

          </td>

How can I use jQuery code to watch for
when the values change in CiviCRM drop down lists?

ベストアンサー

custom_385_14
(アクティビティの保存カスタムフィールドの値がカスタム値テーブルのIDである場合)または
custom_385_14
のいずれかであるアクティビティのカスタムフィールドのIDまたは名前を常に予測できるとは限りません。 新しいものを作りましょう。

私は常に以下のスニペットに従ってカスタムフィールドを作成し、選択ドロップダウンからオプションを変更したときに変更イベントを呼び出す。実際に変更イベントを呼び出すには間違ったIDを選んだと思う。

CRM.$(function($) {
  $("div#customData select[data-api-field='custom_385']").change(function() {
    $("#subject").val($(this).val());
  });
});

または

拡張機能をインストールした後に試してください    https://github.com/pradpnayak/org.civicrm.jsoncaseactivity
私は持っています   JSを   https:// https:////

HTH

Pradeep

返信を残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です