diff --git boxes.module boxes.module
index 1e850f1..0fb0f49 100644
--- boxes.module
+++ boxes.module
@@ -376,6 +376,12 @@ function boxes_box_form($form, &$form_state) {
     '#value' => t('Save'),
     '#attributes' => array('class' => array('boxes-ajax', 'use-ajax-submit')),
   );
+  $form['cancel'] = array(
+    '#type' => 'submit',
+    '#value' => t('Cancel'),
+    '#limit_validation_errors' => array(),
+    '#attributes' => array('class' => array('boxes-ajax', 'use-ajax-submit')),
+  );
 
   if (!empty($form_state['custom_action'])) {
     $form['#action'] = url($_GET['q'], array('query' => array(
@@ -385,6 +391,7 @@ function boxes_box_form($form, &$form_state) {
   }
   if(isset($form_state['init_form']) && $box->use_multistep_create()) {
     unset($form['options']);
+    unset($form['cancel']);
     $form['submit']['#value'] = t('Continue');
     if (!empty($form_state['custom_action'])) {
       $form['#action'] = url($_GET['q'], array(
@@ -404,6 +411,9 @@ function boxes_box_form($form, &$form_state) {
  * Submit handler for the inline form.
  */
 function boxes_box_form_submit($form, $form_state) {
+  if ($form_state['clicked_button']['#value'] == 'Cancel') {
+    return;
+  }
   $box = boxes_factory($form_state['values']['plugin_key'], $form_state['values']);
 
   // if options_submit is defined let the box process the submit
