c#MVC:ajax在从ajax actionlink调用后不工作

c#MVC:ajax在从ajax actionlink调用后不工作,c#,ajax,asp.net-mvc,actionlink,C#,Ajax,Asp.net Mvc,Actionlink,我对调用ajax.actionlink有问题。 在索引视图中,我有两个按钮。默认情况下,TestController和ajax.beginform中的调用编辑器方法工作正常,如果我单击超链接(ajax)切换视图,然后单击其他超链接使用beginform返回到上一个视图,则beginform不工作。为什么以及如何解决这个问题?代码如下 索引视图 <head> <meta name="viewport" content="width=device-width"/>


我对调用ajax.actionlink有问题。 在索引视图中,我有两个按钮。默认情况下,TestController和ajax.beginform中的调用编辑器方法工作正常,如果我单击超链接(ajax)切换视图,然后单击其他超链接使用beginform返回到上一个视图,则beginform不工作。为什么以及如何解决这个问题?代码如下

索引视图

<head>
    <meta name="viewport" content="width=device-width"/>
    <title> Test? </title>

    <link href="~/Content/Admin/css/bootstrap.min.css" rel="stylesheet">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

    <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
</head>

<body>

    @Ajax.ActionLink( "T1", "Editor", "Test", new AjaxOptions(){ UpdateTargetId = "ii2" } )
    @Ajax.ActionLink( "T2", "Test1", "Test2", new AjaxOptions() { UpdateTargetId = "ii2" })

<div id="ii2">

</div>

</body>

测试?
@ActionLink(“T1”、“编辑器”、“测试”、新的AjaxOptions(){UpdateTargetId=“ii2”})
@ActionLink(“T2”、“Test1”、“Test2”、新的AjaxOptions(){UpdateTargetId=“ii2”})
编辑器视图

<table>
    <thead>
    <tr>
        <th> index </th>
        <th> name </th>
        <th> action </th>
    </tr>
    </thead>

    <tbody id="iTest1" >
        @Html.Action( "Table", "Test" )
    </tbody>

    <tfoot>
    <tr>
        @Html.Action( "TableAdd", "Test" )
    </tr>
    </tfoot>
</table>

指数
名称
行动
@动作(“表”,“测试”)
@动作(“TableAdd”,“Test”)
表视图

@using Domain.Entity
@model IEnumerable<Domain.Entity.Language>

@foreach (Language l in Model)
{
    <tr>
        <td> @l.Index </td>
        <td> @l.Name </td>
        <td> </td>
    </tr>
}
@使用Domain.Entity
@模型IEnumerable
@foreach(模型中的语言l)
{
@l、 索引
@l、 名字
}
TableAdd视图

@model Domain.Entity.Language
@using (Ajax.BeginForm( "Add", "Test", new AjaxOptions() { UpdateTargetId = "iTest1" }))
{
    <th> @Html.TextBoxFor(x => x.Index) </th>
    <th> @Html.TextBoxFor(x => x.Name) </th>
    <th> <input type="submit" value="submit"/> </th>
}
@model Domain.Entity.Language
@使用(Ajax.BeginForm(“添加”、“测试”、新的AjaxOptions(){UpdateTargetId=“iTest1”}))
{
@Html.TextBoxFor(x=>x.Index)
@Html.TextBoxFor(x=>x.Name)
}
测试控制器

public class TestController : Controller
{
    private ILanguageRepository _repository = null;

    public TestController(ILanguageRepository repository)
    {
        _repository = repository;
    }

    public ActionResult Index()
    {
        return View( );
    }

    public ActionResult Editor()
    {
        return PartialView( "Editor" );
    }

    public ActionResult Add(Language l)
    {
        _repository.Add( l, true );
        return Table();
    }

    public ActionResult Table(IEnumerable<Language> items = null)
    {
        if (items == null)
            items = _repository.Languages;
        return PartialView( "Table", items );
    }

    public ActionResult TableAdd( Language item )
    {
        return PartialView("TableAdd", item);
    }
}
公共类TestController:Controller
{
私有ILanguageRepository_repository=null;
公共TestController(ILanguagerRepository存储库)
{
_存储库=存储库;
}
公共行动结果索引()
{
返回视图();
}
公共操作结果编辑器()
{
返回PartialView(“编辑”);
}
公共行动结果添加(语言l)
{
_Add(l,true);
返回表();
}
公共操作结果表(IEnumerable items=null)
{
if(items==null)
items=\u repository.Languages;
返回部分视图(“表格”,项目);
}
公共行动结果表添加(语言项)
{
返回部分视图(“表格添加”,项目);
}
}

你说的“不工作”是什么意思?不工作的是什么?你期望发生什么?实际发生了什么?您遇到了什么错误?视图通常在更改后显示,但如果我在“开始”窗体中单击“提交”,则什么也不会发生,例如“空”按钮@neuser,您的问题令人困惑。索引上有2个链接。单击一个,它将带您进入编辑器视图。编辑器视图具有窗体。你说表单第一次有效,但第二次无效。我说得对吗?您第二次是如何进入表单的?是的,在第二次调用同一视图时,beginform不工作我编辑了ask,第一次生成了空标记:,如果我单击ajax actionlink T1,则将生成带有beginform的视图,如果我单击submit,然后什么都没发生你说的什么意思然后开始不工作什么不工作?你期望发生什么,实际发生了什么?您遇到了什么错误?视图通常在更改后显示,但如果我在“开始”窗体中单击“提交”,则什么也不会发生,例如“空”按钮@neuser,您的问题令人困惑。索引上有2个链接。单击一个,它将带您进入编辑器视图。编辑器视图具有窗体。你说表单第一次有效,但第二次无效。我说得对吗?您第二次是如何进入表单的?是的,在第二次调用同一个视图时,beginform不工作我编辑了ask,第一次生成了空标记:,如果我单击ajax actionlink T1,则将生成带有beginform的视图,如果我单击submit,则不会发生任何事情