gpt4 book ai didi

jquery - 从 microsoft Ajax.BeginForm 迁移到 jquery

转载 作者:行者123 更新时间:2023-12-03 22:47:55 25 4
gpt4 key购买 nike

我已经慢慢地从 Microsoft ajax 转向 jquery 来处理我所有的 ajax 内容。我唯一剩下的就是一些通过 Ajax.Beingform 使用 microsoft ajax 发布的表单。这是一个 asp.net mvc 站点,因此提交应该调用 Controller 后操作。

将其转换为 jquery 的最简单方法是什么,这样我就可以删除对 microsoft ajax 的引用。

最佳答案

使用 jQuery Form plugin 可能是最简单的要实现大部分功能,如果您有一个如下所示的表单:-

<%= Ajax.Form(new AjaxOptions {
Url = theUrl,
Method = theMethod,
Confirm = confirmFunction,
InsertionMode = InsertionMode.Before,
OnBegin = onBegin,
OnComplete = onComplete,
OnFailure = onFailure,
OnSuccess = onSuccess,
UpdateTargetId = elementId,
LoadingElementId = loadingElementId
});

这对应于表单插件调用:-

$("#yourFormId").ajaxForm({
url : theUrl,
type : theMethod,
beforeSubmit : confirmFunction,
beforeSend : onBegin,
complete : onComplete,
success : onSuccess,
error : onFailure
});

唯一的问题是复制 LoadingElementId、UpdateTargetId 和 InsertionMode 属性。

如果您想复制InsertionMode.Replace,您可以将附加目标选项传递给ajaxForm插件。如果您想复制其余功能,则必须编写自己的 beforeSend、success 和 Complete 事件处理程序。

类似下面的内容将模拟具有 InsertionMode.Before、UpdateTargetId = "Test"、LoadingElementId = "Loader"的表单:-

$("#yourFormId").ajaxForm({
beforeSend : function() { $("#Loader").show(); },
complete : function() { $("#Loader").hide(); },
success: function(result) { $(result).prependTo("#Test"); }
});

关于jquery - 从 microsoft Ajax.BeginForm 迁移到 jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2349088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com