通过JavaScript更改MVCAJAX表单的插入模式?
我想通过客户端的javascript更改一些MVC Ajax表单参数,如通过JavaScript更改MVCAJAX表单的插入模式?,javascript,c#,ajax,asp.net-mvc,asp.net-mvc-ajax,Javascript,C#,Ajax,Asp.net Mvc,Asp.net Mvc Ajax,我想通过客户端的javascript更改一些MVC Ajax表单参数,如InsertionMode或LoadingElementId。 我怎么做 MVC ajax表单示例: @using (Ajax.BeginRouteForm("DevicesByObjectName", new AjaxOptions { InsertionMode = InsertionMode.InsertBefore, UpdateTargetId = "Devices", LoadingEle
InsertionMode
或LoadingElementId
。我怎么做 MVC ajax表单示例:
@using (Ajax.BeginRouteForm("DevicesByObjectName", new AjaxOptions
{
InsertionMode = InsertionMode.InsertBefore,
UpdateTargetId = "Devices",
LoadingElementId = "LoaderContents",
OnSuccess = "MoreDevicesOnSuccess",
OnFailure = "MoreDevicesOnFailure",
OnBegin = "MoreDevicesOnBegin",
OnComplete = "MoreDevicesOnComplete",
}))
{
<div>
@Html.AntiForgeryToken()
<input type="hidden" value="@Model.Object.Id" id="ObjectId" name="ObjectId" />
<input type="hidden" value="2" id="PageNumber" name="PageNumber" />
<input type="hidden" value="" id="Filtering" name="Filtering" />
<div class="center-block" style="max-width: 360px;">
<input type="submit" value=" more" class="btn btn-primary btn-lg btn-block center-block" />
</div>
<div id="LoaderContents" class="ajax-loader center-block hidden"></div>
</div>
}
@使用(Ajax.BeginRouteForm(“DeviceByObjectName”),新的AjaxOptions
{
InsertionMode=InsertionMode.InsertBefore,
UpdateTargetId=“设备”,
LoadingElementId=“LoaderContent”,
OnSuccess=“更多设备OnSuccess”,
OnFailure=“MoreDevicesOnFailure”,
OnBegin=“MoreDevicesOnBegin”,
OnComplete=“更多设备OnComplete”,
}))
{
@Html.AntiForgeryToken()
}
BeginRouteForm
生成一个带有一系列基于AjaxOptions
的
属性的标记
<form ... data-ajax-loading="#LoaderContents" data-ajax-mode="before" ...>
检查生成的html中的表单
标记。您将看到像dataajaxload=“#LoaderContents”dataajaxmode=“before”
这样的属性,可以使用javascript@StephenMuecke:谢谢。请把它贴出来作为答案
console.log($('form').data('ajax-mode')); // returns before
$('form').data('ajax-mode', 'after'); // change the insertion mode
console.log($('form').data('ajax-mode')); // returns after