2015-12-01 3 views
1

Я пытаюсь загрузить содержимое модального файла с помощью AJAX. Вот фрагмент кода, который я пытаюсь сделать.Как загрузить загрузочный модальный контент через AJAX в MVC?

Index.cshtml

<button type="submit" class="btn btn-default" onclick="Create()">Create</button> 

index.js

function AddTask() { 
    $Modal = $('#myModal') 
    $.get('/Customer/Create', function (data) { 
     $Modal.modal({ show: true }); 
    }); 
} 

контроллер клиента

public ActionResult Create() 
{ 
    return PartialView(); 
} 

Create.cshtml

<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog"> 
    <div class="modal-header"> 
     <button type="button" class="close" data-dismiss="modal">×</button> 
     <h3>Modal header</h3> 
    </div> 
    <div class="modal-body"> 
     <p>My modal content here…</p> 
    </div> 
    <div class="modal-footer"> 
     <button class="btn" data-dismiss="modal">Close</button> 
    </div> 
</div> 

Как загрузить содержимое Create.cshtml в модальном режиме?

+0

Благодарим вас за ввод, но не сработали. Это не работало как модальное. – Lakhae

+0

у вас есть 'Create()' в событии 'onclick' на вашей кнопке, но функция, которую вы хотите вызвать, называется' AddTask' - это опечатка в вашем вопросе или это ваш код? – StanK

ответ

0

Я считаю, что должно работать для вас, хотя, я не уверен насчет type="submit"

<button type="submit" href="@Url.Action("Create","Customer")" 
    class="btn btn-default" data-toggle="modal" data-target="#myModal">Create</button> 

или

<button type="submit" data-remote="@Url.Action("Create","Customer")" 
    class="btn btn-default" data-toggle="modal" data-target="#myModal">Create</button> 

Хотя, это было амортизироваться, так что вам нужно сделать это вручную в версии 4 (или написать собственное расширение, чтобы справиться с этим, как это было в 3.x)

Я считаю, что вам также необходимо удалить <div id="myModal" class="modal hide fade" tabindex="-1" role="dialog">, а l ast </div> из Create.cshtml, так как они принадлежат вашей родительской странице (Index.cshtml).

+0

Я пробовал ваш вход, но не работал. – Lakhae

1

Вы можете сделать вот так. Предположим, что мы получаем частичный вид для модального content.Instead метода GET

function AddTask() { 
    $Modal = $('#myModal'); 
    $Modal.load('/Customer/Create'); 
    $Modal.modal('show'); 
} 

Примечание: Здесь я использовал самозагрузки 2.3.2.I надеюсь, что вы можете получить представление об этом.

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