คำถามติดแท็ก ajax

ใช้สำหรับคำถามเกี่ยวกับรหัส JavaScript / PHP เพื่อสร้างแอปพลิเคชันเว็บแบบอะซิงโครนัส

6
จะตรวจสอบและส่งแบบฟอร์มโดยใช้ AJAX ได้อย่างไร
ฉันสร้างฟอร์มเว็บโดยใช้ Form API ฉันใช้#AJAXตัวเลือกฟิลด์เพื่อเพิ่มการตรวจสอบ AJAX ให้กับแต่ละฟิลด์ เป็นไปได้หรือไม่ที่จะตรวจสอบและส่งแบบฟอร์มโดยใช้ AJAX โดยไม่ต้องโหลดหน้าซ้ำ หากการตรวจสอบล้มเหลวฉันต้องการแสดงข้อความแสดงข้อผิดพลาดและหากการตรวจสอบสำเร็จแล้วฉันต้องการแสดงข้อความ (นึกคิดใน lightbox) และตั้งค่าเขตข้อมูลแบบฟอร์ม รหัสของฉัน: $form['name'] = array( '#type' => 'textfield', '#title' => t('Name'), '#default_value' => '', '#maxlength' => '128', '#required' => TRUE, '#ajax' => array( 'callback' => '_validate_name', 'wrapper' => 'name-error-icon-container', 'method' => 'html', 'effect' => 'none', 'progress' => array( …
12 7  forms  ajax 

4
ข้อความสถานะด้วย AJAX
ฉันกำลังโทร AJAX ใน drupal 7 ผ่าน AJAX Framework มาตรฐาน ปัญหาของฉันคือเมื่อข้อความสถานะถูกตั้งค่าโดยการโทรกลับ AJAX มันจะหายไปเพียงแค่ (หรือแสดงที่โหลดหน้าถัดไป) ฉันจะแสดงข้อความสถานะได้ทันทีหลังจากที่ AJAX โทรกลับทำงานเสร็จแล้วโดยไม่ต้องโหลดหน้าซ้ำ มีโมดูลสำหรับสิ่งนั้นหรือไม่?

3
วิธีเรียกใช้ Drupal.attachBehaviors หลังจาก Ajax ที่ประสบความสำเร็จ
ฉันมีโมดูลที่อัพเดตโหนดผ่าน ajax เมื่อมีการคลิกลิงก์ ลิงค์คือสลับคุณควรอัปเดตโหนดด้วยค่า 1 ในการคลิกครั้งแรกจากนั้นตามด้วยค่า 0 ในการคลิกครั้งต่อไป ฯลฯ เช่นเดียวกับการเปิด / ปิดบางสิ่งบางอย่าง รหัสด้านล่างใช้งานได้ในการคลิกครั้งแรกหลังจากโหลดหน้าเว็บ แต่ไม่สามารถคลิกครั้งต่อไปได้ ฉันเชื่อว่า Drupal.attachBehaviors ต้องถูกเรียก / เรียกใช้หลังจากการคลิกแต่ละครั้ง แต่ฉันไม่สามารถหาวิธีการทำสิ่งนี้ได้ โมดูล function mymodule_menu() { $items['mypath/%/%/ajax'] = array( 'title' => 'My title', 'page callback' => 'mymodule_ajax_callback', 'page arguments' => array(1,2), 'access arguments' => array('access content'), 'type' => MENU_CALLBACK, ); ... } …
10 7  ajax  javascript 

8
วิธีเพิ่มป๊อปอัพการยืนยัน JS เมื่อคลิกปุ่ม #ajax
ฉันมีอินพุตปุ่ม FAPI พื้นฐานที่เปิดใช้งาน #ajax และใช้งานได้ดี แต่ฉันต้องการเพิ่ม JS "คุณแน่ใจหรือไม่" ยืนยันป๊อปอัพเมื่อคลิกปุ่มก่อนที่รหัสจะทำงานจริงและฉันไม่แน่ใจว่าจะทำอย่างไรเพราะ JS ของ FAPI ดูเหมือนว่าจะกินคลิกก่อนที่ฉันจะไปถึงไม่ว่าฉันจะทำอะไร ฉันได้ลองเพิ่มตัวจัดการ onclick แบบอินไลน์เช่น: $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?')" ), …
10 7  forms  ajax  javascript 

1
เพิ่มรายการโฆษณาที่แสดงต้นทุนรวม
ฉันจะเพิ่มรายการโฆษณาใน Ubercart 2 ที่รวมค่าใช้จ่ายทั้งหมดของรายการทั้งหมดไม่ใช่ราคาขายได้อย่างไร ฉันพยายามโคลนเบ็ดรายการโฆษณาทั่วไปและเพิ่มสิ่งนี้สำหรับการโทรกลับ: for each($op->products as item){ $cost += $item->cost; } ฉันต้องการให้รายการโฆษณานี้ปรากฏในรถเข็น (ฉันใช้ตะกร้า ajax) ในบานหน้าต่างคำสั่งซื้อก่อนที่ผู้ใช้จะชำระเงินเสร็จและในอีเมลที่เจ้าของร้านและผู้ใช้ได้รับ ฉันต้องสร้างโมดูลเล็กน้อยสำหรับโค้ดนี้นอก uc_order หรือไม่ ฉันจำรหัสไม่ถูกต้องเหมือนที่อยู่ในคอมพิวเตอร์ที่ทำงานของฉัน แต่ฉันคิดว่าฉันวางมันผิดที่ ขอบคุณสำหรับคำแนะนำใด ๆ
10 ajax  ubercart 

2
บังคับให้ Drupal แนบพฤติกรรม Drupal กับเนื้อหา ajaxed ใหม่ [only Drupal.attachBeh พฤติกรรม () ไม่ทำงานอย่างถูกต้อง]
ฉันกำลังทำโพสต์จำนวนมากบน drupal.org เกี่ยวกับหัวข้อนี้ แต่น่าเสียดายในบริบทที่ไม่ถูกต้อง เนื้อหา Ajaxed ไม่ได้แนบ JS และ CSS (ฟอรัม) ที่จำเป็น เนื้อหา Ajaxed ไม่ได้แนบ JS และ CSS (ปัญหา) ที่จำเป็น ฉันคิดว่านั่นไม่ใช่ปัญหาดังนั้นฉันลองใช้วิธีอื่นและอาจเป็นวิธีแก้ปัญหา การโหลดหน้า PHP ทั้งหมดและแยกส่วนที่แน่นอนด้วย ajax ไม่ได้ทำงานอย่างถูกต้อง ดังนั้นฉันคิดว่าฉันสามารถปล่อยให้ drupal โหลดเนื้อหาและฉีดมันด้วย ajax ลงใน div ฉันทำแบบสอบถามด้วย hook_preprocess_page และ hook_preprocess_node ที่กำลังมองหา "ajax = 1" ใน URL ที่ร้องขอจากนั้นให้เนื้อหาที่ไม่มีหน้าทั้งหมดเท่านั้น และตอนนี้ด้วยความช่วยเหลือของไฟล์ tpl.php บางอันในทางทฤษฎีฉันสามารถ จำกัด เอาต์พุตของ drupal เพียง …
10 7  ajax  javascript 

6
จะแสดงมากกว่า 10 รายการในการเติมข้อความอัตโนมัติวิดเจ็ตลิงค์ได้อย่างไร?
นี่เป็นคำถามเกี่ยวกับโมดูลลิงค์ เนื่องจากด้วยโมดูลลิงก์คุณสามารถป้อนลิงก์ภายนอกหรือภายในทั้งสองเราจึงเชื่อมั่นอย่างยิ่ง น่าเสียดายที่จำนวนรายการที่จะแสดงจากฟิลด์การเติมข้อความอัตโนมัติของมันถูก จำกัด ไว้ที่ 10 เรามีโหนดจำนวนมากที่มีชื่อเหมือนกันเกือบทั้งหมดดังนั้นจึงเป็นเช่นนั้นว่าโหนดที่เรากำลังค้นหาไม่แสดงในฟิลด์เติมข้อความอัตโนมัติเมื่อมี ชื่อที่ตรงกันมากกว่า 10 รายการ ขีด จำกัด คือ hardcoded core/lib/Drupal/Core/Entity/EntityAutocompleteMatcher.phpใน มีวิธีที่สง่างามในการเพิ่มจำนวนเล็กน้อยจากภายในโมดูลที่กำหนดเองหรือไม่? ฉันต้องยืดเวลาclass EntityAutocompleteMatcherหรือไม่? ฉันจะต้องวางส่วนขยายของฉันไว้ที่ใดและจะมั่นใจได้อย่างไรว่าส่วนขยายนั้นถูกเรียกใช้จากภายในวิดเจ็ตลิงก์
10 8  navigation  ajax 

5
วิธีการหลีกเลี่ยง“ ตรวจพบตัวเลือกที่ผิดกฎหมาย” เมื่ออัปเดตค่ารายการที่เลือกผ่าน ajax?
ฉันมีสี่ฟิลด์อ้างอิงเอนทิตีไปยังเอนทิตีผู้ใช้ในแบบฟอร์ม รูปแบบโฮสต์เป็นรูปแบบการแก้ไขโหนด สามของพวกเขาจะเลือกรายการสุดท้ายคือInline Entity แบบฟอร์ม หลังจากเพิ่มเอนทิตีผู้ใช้ผ่าน IEF ฉันกำลังพยายามอัปเดตค่ารายการที่เลือก: function ebep_users_feature_users_list_ajax($form, $form_state) { $ief = array_shift($form_state['inline_entity_form']); $options = array('_node' => t('- None -')); $commands = array(); foreach($ief['entities'] as $data) { $options[$data['entity']->uid] = $data['entity']->name; } foreach(_ebep_users_feature_getUserListFieldNames() as $fieldName) { $form[$fieldName]['und']['#options'] = $options; $commands[] = ajax_command_replace('#'.$fieldName.'_wrapper', drupal_render($form[$fieldName])); } return array('#type' => 'ajax', '#commands' …
10 7  ajax  forms 

2
มุมมองตัวกรองที่เปิดเผยโดยอัตโนมัติส่งเสียโฟกัส
ฉันมีการตั้งค่ามุมมองที่เปิดใช้งาน Ajax ฉันได้เพิ่มตัวกรองที่เปิดเผยด้วยการส่งอัตโนมัติเพื่อให้ผู้ใช้พิมพ์ในช่องข้อความมุมมองจะอัปเดตโดยอัตโนมัติ ปัญหาคือว่าเมื่อแบบฟอร์มอัตโนมัติส่งกล่องข้อความสูญเสียโฟกัส ฉันได้อ่านแล้วว่าฉันต้องแยกแบบฟอร์มที่เปิดเผยออกเป็นบล็อกแยกต่างหากอย่างไรก็ตามตัวเลือกนี้ไม่สามารถใช้งานได้เนื่องจากมุมมองของฉันเป็นตัวบล็อกเอง ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชมเพราะมันเป็นความเจ็บปวดที่แท้จริงต้องคลิกในกล่องข้อความเพื่อให้การพิมพ์
9 7  ajax  views 

4
เหตุการณ์ที่เรียกใช้หลังจากการเติมข้อความอัตโนมัติทำงานและวิธีเรียกคืนค่าที่เลือก
ฉันมีโหนดเพิ่มฟอร์มด้วยการอ้างอิงคำที่ใช้วิดเจ็ตเติมข้อความอัตโนมัติ ฉันต้องการ "tid" ของคำที่เติมโดยผู้ใช้โดยใช้วิดเจ็ตการเติมข้อความอัตโนมัติ

2
เรียกใช้ฟังก์ชัน JS ที่กำหนดเองใน AJAX callback หรือไม่
เป็นไปได้ไหมที่จะเรียกใช้ฟังก์ชัน JS ที่กำหนดเองใน AJAX callback? function MY_MODULE_ajax_callback() { // Define a new array to hold our AJAX commands. $ajax_commands = array(); // Create a new AJAX command that replaces the #page text with our own text. $ajax_commands[] = [CUSTOM JS FUNCTION] // Return our commandS return array('#type' => 'ajax','#commands' => …
8 7  ajax 

3
ปิดการใช้งานองค์ประกอบแบบฟอร์มทั้งหมดเมื่อทำ AJAX
ฉันมีฟอร์มที่เปิดใช้งาน AJAX ทุกฟิลด์ป้อนข้อมูลผู้ใช้และฉันต้องการปิดการใช้งานองค์ประกอบทั้งหมดของฟอร์มเมื่อมีการเปลี่ยนแปลงอย่างใดอย่างหนึ่ง - เป็นไปได้หรือไม่
8 7  forms  ajax 

6
เหตุใดบริการ Drupal RESTful API นี้จึงไม่ทำงาน
ฉันใช้โมดูลบริการใน Drupal 7 ฉันต้องการใช้บริการที่อนุญาตให้ฉันส่งข้อความค้นหาผ่าน AJAX และรับอาร์เรย์ที่มีโหนด 5 อันดับแรก (โหนดidและtitle) ที่ตรงกับชื่ออย่างหลวม ๆ เมื่อเชื่อมต่อกับhttp://example.com/api/ฉันได้รับข้อความนี้ "การค้นหา" จุดสิ้นสุดบริการได้รับการติดตั้งเรียบร้อยแล้ว แต่เมื่อพยายามนำทางไปยังสิ่งที่ต้องการhttp://example.com/api/search/Testฉันจะได้รับ 404
8 7  nodes  ajax  services 

3
ฉันสามารถใช้ ajax เพื่อกำหนดเป้าหมายองค์ประกอบหลายรูปแบบจากอินพุตเดียวได้หรือไม่
ฉันพยายามใช้ ajax เพื่ออัพเดทสองส่วนที่แตกต่างกันของรูปแบบ drupal จากเพียงแค่การเบลอของแบบฟอร์มเดียว ฉันมีสิ่งอาแจ็กซ์มาตรฐานในการป้อนข้อมูลของฉัน: $my_form['my_input']['#ajax'] = array( 'callback' => 'my_callback', 'wrapper' => 'my_target_div', 'event' => 'blur', ); สิ่งนี้ใช้ได้ดีสลับ div ของฉันเมื่อมีการอัปเดตอินพุต ... แต่ฉันต้องการอัปเดตรูปแบบอื่นที่อื่นในแบบฟอร์มด้วยรหัสที่แตกต่างกันเนื่องจากความพร่ามัวของอินพุตต้นฉบับของฉัน เป็นไปได้หรือไม่ความคิดใด ๆ แก้ไข: เพื่อความชัดเจนนี่คือตัวอย่างโลกจริงของฉัน: ประเภทเนื้อหา 'ภาพยนตร์' ฟิลด์ที่ถูกเพิ่ม 'primary_title' เมื่อ 'primary_title' ได้รับการอัปเดต ajax callback ของฉันจะตรวจสอบสตริงที่คล้ายกันและส่งคืน html html จากการเรียกกลับถูกแทรกลงใน div ที่ว่างเปล่า ส่วนนั้นทำงานได้ดี! ฉันพยายามที่จะแก้ไขอินพุต 'ชื่อ' โหนดโหนดมาตรฐานโดยให้ค่าเป็น 'primary_title' หลังจากที่ฉันทำ regex …
8 7  forms  ajax 

2
จะส่งฟอร์มเว็บโดยใช้โปรแกรม Ajax ได้อย่างไร
ฉันกำลังใช้งาน Ajax สำหรับ Webform submit บน Drupal 7. ฉันไม่สามารถหาสิ่งที่ดีhookในการเปลี่ยนปุ่มส่ง Webform และเพิ่ม '#ajax' ในแบบฟอร์มดังนั้นฉันจึงดูโมดูล Drupal 6ที่ ใช้ฟังก์ชันนี้จากสคริปต์ภายนอก ดังนั้นฉันจึงตัดสินใจไปกับโมดูลและโค้ด JavaScript ของตัวเองเพื่อดำเนินการคำขอโพสต์ Ajax ไปยังการเรียกกลับเมนูที่กำหนดเองที่ฉันได้กำหนดไว้hook_menu()ใน Drupal 7 ส่วนของ JavaScript ใช้งานได้ดี แต่ฉันมีปัญหาในการพยายามส่ง Webform ทางโปรแกรม นี่คือรหัส JavaScript ของฉัน: function formSubmit(event, formId) { event.preventDefault(); var form = jQuery("#" + formId); var postData = form.serialize(); var nodeId = …
8 ajax  webforms  forms 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.