2015-06-11 6 views
0

Я использую, bootbox JS показать модальные Диалоги: http://bootboxjs.com/documentation.htmlИзменить содержание Bootstrap Модального - BootBox JS

Я пытаюсь показать форму в модальном Dialgue. Эта форма находится в частичном представлении.

Это прекрасно работает, я могу загрузить Partial View и показать в Modal, используя приведенный ниже код.

HTML:

<button type="button" class="btn btn-labeled btn-primary pull-right" 
      data-modal-title="Create Workshop" data-action="OpenPartialViewDialog" 
      data-action-url="@Url.Action("CreateWorkshop", "Workshops")"> 
     <span class="btn-label"><i class="glyphicon glyphicon-plus"></i></span>Create 
    </button> 

Jquery

$("body").on("click", '*[data-action="OpenPartialViewDialog"]', function (e) { 

    e.stopPropagation(); 

    var btn = $(this); 
    var title = btn.data("modal-title"); 
    $.ajax({ 
     url: btn.data("action-url"), 
     type: "GET", 
     success: function (response) { 

      bootbox.dialog({ 
       message: response, 
       title: title, 
       buttons: { 
        success: { 
         label: "Save", 
         className: "btn-success", 
         callback: function() { 
          $.ajax({ 
           url: btn.data("action-url"), 
           type: "POST", 
           data: $("form").serialize(), 
           success: function (response) { 

           }, 
           error: function (response) { 
            return false; 
           } 

          }); 

          return false; 
         } 
        }, 
        danger: { 
         label: "Cancel", 
         className: "btn-danger" 
        } 
       } 
      }); 
     } 
    }); 
}); 

Как вы можете видеть код, указанный выше Посылаю запрос Ajax, когда пользователь нажимает на кнопку Save.

//EXTRACTED CODE FROM ABOVE 
callback: function() { 
$.ajax({ 
    url: btn.data("action-url"), 
    type: "POST", 
    data: $("form").serialize(), 
    success: function (response) { 

    } 
}); 

Так вот что я хочу сделать,

Вот код в мой контроллер, где я выкладываю форму:

[HttpPost] 
    public ActionResult CreateWorkshop(WorkshopDTO model) 
    { 
     if (ModelState.IsValid) 
     { 

     } 
     return PartialView(model); 
    } 

Когда пользователь отправляет форму контроллер проверяет для проверки на стороне сервера.

Если проверка не пройдена контроллер возвращает HTML (Частичное представление с сообщениями проверки)

Я хочу, чтобы обновить мой модальное содержание так, что он показывает Validations. http://bootboxjs.com/documentation.html#bb-custom-dialog

РЕЗЮМЕ::

Я не могу, что связано с этим в документации см Это то, что мне нужно сделать. Это то, что модальный выглядит, , когда пользователь нажимает кнопку Сохранить, если проверка не пройдена, обновить Модального сообщение Content

enter image description here

ответ

1

Вы можете сделать еще один bootbox вызов со своими собственными параметрами из функции дозвона начальный модальный. Отключите анимацию на этом втором модальном так, чтобы пользователь выглядел как первый модальный только что изменился.

bootbox.dialog({ 
    message: response, 
    title: title, 
    buttons: { 
     success: { 
      label: "Save", 
      className: "btn-success", 
      callback: function() { 
       bootbox.dialog({ 
        animate: false, 
        message: newresponse, 
        title: newtitle, 
        etc... 
+0

Звучит неплохо. Попробуем попробовать и увидим результат. –

+0

Я все еще получаю сбой на экране, когда я нажимаю кнопку «Отправить». –

 Смежные вопросы

  • Нет связанных вопросов^_^