Ich habe eine grundlegende FAPI-Tasteneingabe, die #ajax aktiviert ist und gut funktioniert, aber ich möchte eine JS hinzufügen. "Sind Sie sicher?" Bestätigungs-Popup beim Klicken auf die Schaltfläche, bevor der Code tatsächlich ausgeführt wird, und ich bin mir nicht sicher, wie ich das tun soll, da JS von FAPI den Klick zu essen scheint, bevor ich darauf zugreifen kann, egal was ich tue.
Ich habe versucht, einen Inline-Onclick-Handler hinzuzufügen, wie folgt:
$form['search_filters']['channels']['channel_delete_' . $channel->nid] = array(
'#type' => 'button',
'#name' => 'channel_delete_' . $channel->nid,
'#value' => 'Delete',
'#attributes' => array(
'class' => array('confirm'),
'onclick' => "return confirm('Are you sure you want to delete that?')"
),
'#button_type' => 'no-submit',
'#ajax' => array(
'callback' => 'delete_channel_callback',
'wrapper' => 'channel_container_' . $channel->nid
),
);
... was nicht hilft, und ich habe auch versucht hinzuzufügen:
$('.confirm').click(function(e) {
e.preventDefault();
alert('Is this recognized')? // never runs
});
im JS meines Moduls, das ebenfalls ignoriert wird.
Irgendwelche anderen Ideen? Gibt es eine Möglichkeit, einen Submit-Handler oben im Stapel hinzuzufügen, den Drupal #ajax erkennt?