diff options
author | Angie Byron <webchick@24967.no-reply.drupal.org> | 2010-11-29 03:00:50 +0000 |
---|---|---|
committer | Angie Byron <webchick@24967.no-reply.drupal.org> | 2010-11-29 03:00:50 +0000 |
commit | 4e90d24dd9ff1474bf679f70a351dee371e87b51 (patch) | |
tree | 29a273840a1c145fcd5e43ca39a7c04504842a7e /modules | |
parent | ff119bc0ccfa224279456c901904955a6b1f4d05 (diff) | |
download | drupal-4e90d24dd9ff1474bf679f70a351dee371e87b51.tar.gz drupal-4e90d24dd9ff1474bf679f70a351dee371e87b51.zip |
#818660 by yched, sun: Provide an AJAX command to invoke simple jQuery methods.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/simpletest/tests/ajax.test | 9 | ||||
-rw-r--r-- | modules/simpletest/tests/ajax_forms_test.module | 19 |
2 files changed, 28 insertions, 0 deletions
diff --git a/modules/simpletest/tests/ajax.test b/modules/simpletest/tests/ajax.test index 2788d4f90b77..2a2469334d39 100644 --- a/modules/simpletest/tests/ajax.test +++ b/modules/simpletest/tests/ajax.test @@ -211,6 +211,15 @@ class AJAXCommandsTestCase extends AJAXTestCase { ); $this->assertCommand($commands, $expected, "'data' AJAX command issued with correct key and value"); + // Tests the 'invoke' command. + $commands = $this->drupalPostAJAX($form_path, $edit, array('op' => t("AJAX invoke command: Invoke addClass() method."))); + $expected = array( + 'command' => 'invoke', + 'method' => 'addClass', + 'arguments' => array('error'), + ); + $this->assertCommand($commands, $expected, "'invoke' AJAX command issued with correct method and argument"); + // Tests the 'html' command. $commands = $this->drupalPostAJAX($form_path, $edit, array('op' => t("AJAX html: Replace the HTML in a selector."))); $expected = array( diff --git a/modules/simpletest/tests/ajax_forms_test.module b/modules/simpletest/tests/ajax_forms_test.module index 531c703fda68..21784dfa353c 100644 --- a/modules/simpletest/tests/ajax_forms_test.module +++ b/modules/simpletest/tests/ajax_forms_test.module @@ -176,6 +176,16 @@ function ajax_forms_test_ajax_commands_form($form, &$form_state) { '#suffix' => '<div id="data_div">Data attached to this div.</div>', ); + // Shows the AJAX 'invoke' command. + $form['invoke_command_example'] = array( + '#value' => t("AJAX invoke command: Invoke addClass() method."), + '#type' => 'submit', + '#ajax' => array( + 'callback' => 'ajax_forms_test_advanced_commands_invoke_callback', + ), + '#suffix' => '<div id="invoke_div">Original contents</div>', + ); + // Shows the AJAX 'html' command. $form['html_command_example'] = array( '#value' => t("AJAX html: Replace the HTML in a selector."), @@ -332,6 +342,15 @@ function ajax_forms_test_advanced_commands_data_callback($form, $form_state) { } /** + * AJAX callback for 'invoke'. + */ +function ajax_forms_test_advanced_commands_invoke_callback($form, $form_state) { + $commands = array(); + $commands[] = ajax_command_invoke('#invoke_div', 'addClass', array('error')); + return array('#type' => 'ajax', '#commands' => $commands); +} + +/** * AJAX callback for 'html'. */ function ajax_forms_test_advanced_commands_html_callback($form, $form_state) { |