ฉันค่อนข้างใหม่สำหรับ drupal ฉันได้เพิ่มปุ่มแบบกำหนดเองลงในหน้าแก้ไขประเภทเนื้อหา เมื่อฉันคลิกที่ปุ่มนั้นฉันต้องการเรียกใช้ฟังก์ชัน แต่ดูเหมือนว่าจะไม่เรียกใช้ฟังก์ชันเมื่อฉันเห็นคอนโซล ฉันเห็น drupa ajax เกิดข้อผิดพลาดเมื่อใดก็ตามที่ฉันคลิกปุ่ม โปรดแจ้งให้เราทราบว่าฉันทำอะไรผิดที่นี่
ฟังก์ชัน mymodule_form_node_program_edit_form_alter (&$form, FormStateInterface $form_state) {
$form['สมัคร'] = array(
'#type' => 'ส่ง',
'#value' => t('สมัคร'),
'#น้ำหนัก' => '9',
'#executes_submit_callback' => เท็จ
'#limit_validation_errors' => อาร์เรย์(),
'#ajax' => อาร์เรย์(
'callback' => 'button_test_callback',
),
);
}
ฟังก์ชัน button_test_callback (อาร์เรย์ &$form, \Drupal\Core\Form\FormStateInterface $form_state) {
echo '<script>alert("ยินดีต้อนรับ")</script>';
คืนฟอร์ม $;
}
ข้อผิดพลาดที่ฉันได้รับ:
ยังไม่ได้จับ
Drupal.AjaxError {ข้อความ: "\nเกิดข้อผิดพลาด AJAX HTTP\nรหัสผลลัพธ์ HTTP: 50â¦\Core\DrupalKernel->handle(Object) (บรรทัด: 19)\n", ชื่อ: "AjaxError"}
ข้อความ: "\nเกิดข้อผิดพลาด AJAX HTTP\nรหัสผลลัพธ์ HTTP: 500\nข้อมูลการดีบักตามมา\nเส้นทาง: /node/680911/edit?destination=/admin/content&ajax_form=1\nStatusText: ข้อผิดพลาด\nResponseText: เว็บไซต์พบข้อผิดพลาด เกิดข้อผิดพลาดที่ไม่คาดคิด โปรดลองอีกครั้งในภายหลัง Symfony\Component\HttpKernel\Exception\HttpException: การโทรกลับ #ajax ที่ระบุว่างเปล่าหรือไม่สามารถโทรได้ใน Drupal\Core\Form\FormAjaxResponseBuilder->buildResponse() (บรรทัดที่ 67 ของ core/lib/Drupal/Core/Form/FormAjaxResponseBuilder.php) Drupal\Core\Form\EventSubscriber\FormAjaxSubscriber->onException(Object, 'kernel.exception', Object)\ncall_user_func(Array, Object, 'kernel.exception', Object) (บรรทัด: 111)\nDrupal\Component\EventDispatcher\ ContainerAwareEventDispatcher->dispatch('kernel.exception', Object) (บรรทัด: 227)\nSymfony\Component\HttpKernel\HttpKernel->handleException(Object, Object, 1) (บรรทัด: 79)\nSymfony\Component\HttpKernel\HttpKernel- >ที่จับ (วัตถุ 1, 1) (บรรทัด: 67)\nDrupal\simple_oauth\HttpMiddleware\BasicAuthSwap->ที่จับ (วัตถุ 1, 1) (บรรทัด: 57)\nDrupal\Core\StackMiddleware\Session->ที่จับ (วัตถุ , 1, 1) (บรรทัด: 47)\nDrupal\Core\StackMiddleware\KernelPreHandle->handle(Object, 1, 1) (บรรทัด: 106)\nDrupal\page_cache\StackMiddleware\PageCache->pass(Object, 1, 1 ) (บรรทัด: 85)\nDrupal\page_cache\StackMiddleware\PageCache->handle(Object, 1, 1) (บรรทัด: 49)\nAsm89\Stack\Cors->handle(Object, 1, 1) (บรรทัด: 50) \nDrupal\ban\BanMiddleware->handle(Object, 1, 1) (บรรทัด: 47)\nDrupal\Core\StackMiddleware\ReverseProxyMiddleware->han dle(Object, 1, 1) (บรรทัด: 52)\nDrupal\Core\StackMiddleware\NegotiationMiddleware->handle(Object, 1, 1) (บรรทัด: 23)\nStack\StackedHttpKernel->handle(Object, 1, 1) (บรรทัด: 708)\nDrupal\Core\DrupalKernel->ที่จับ (วัตถุ) (บรรทัด: 19)\n"