2015-01-30 1 views
1

Когда я нажимаю ajax из загруженного, партиленовый вид правильно внутри div имеет id как mytraget. Но мой вопрос заключается в том, что использование insertmode в ajax-форме.Что такое режим вставки в AJAXFORM в MVC?

При отправке формы ajax всегда загружается частичный вид внутри div, так как id имеет значение id в качестве mytraget для всех типов вставки. Тогда что такое режим вставки?

Мой первоначальный вид назван как метод MyView

@model Example.Models.mytest 

<div id="mytraget"> </div> 

@using(Ajax.BeginForm("myParialAjax", new AjaxOptions() { InsertionMode = InsertionMode.InsertBefore, UpdateTargetId = "mytraget" })) 
{ 
    <p>Name</p> @Html.TextBoxFor(m => m.string1) 

    <input type="submit" value="Submit" /> 
} 

Мои Cobtroller

[HttpPost] 
public PartialViewResult myParialAjax(mytest s) 
{ 
    return PartialView("Mypartial", s); 
} 

Мой Parial вид, который назван Mypartial

@model Example.Models.mytest 

<p> 
    @Html.TextBoxFor(m =>m.string1) 
</p> 

Во всех типов режима вставки я получаю частичный вид внутри нижнего div , Выход:

<div id="mytraget"> 
    <p> 
     <input id="string1" type="text" value="asdf" name="string1"> 
    </p> 
</div> 

ответ

0

я получил себе ответ, что мне не хватает это нужно вставить несколько тегов внутри целевого тега.

Как показано ниже:

@model Example.Models.mytest 

<div id="mytraget"> 
    <p> my para </p> 
</div> 

@using(Ajax.BeginForm("myParialAjax", new AjaxOptions() { InsertionMode = InsertionMode.InsertBefore, UpdateTargetId = "mytraget" })) 
{ 
    <p>Name</p> @Html.TextBoxFor(m => m.string1) 

    <input type="submit" value="Submit" /> 
} 

Теперь здесь InsertionMode.InsertBefore вставит мой частичный вид выше тега абзаца и InsertionMode.InsertAfter вставит мой частичный вид после тега абзаца и InsertionMode.Replace будет заменить отверстие, которое находится внутри тега, имеет мой целевой идентификатор.

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