asp.net-mvc – jQuery Ajax调用控制器
发布时间:2020-12-16 07:34:18 所属栏目:asp.Net 来源:网络整理
导读:我是Ajax的新手,如果在下拉列表中选择了某些项目,我会尝试禁用复选框.我需要将mlaId传递给RecipientsController.cs中的GetMlaDeliveryType(int Id)方法. 我不确定如何在javascript函数checkMlaDeliveryType(mlaId)中设置ajax调用. // MLA Add disable expres
我是Ajax的新手,如果在下拉列表中选择了某些项目,我会尝试禁用复选框.我需要将mlaId传递给RecipientsController.cs中的GetMlaDeliveryType(int Id)方法.
我不确定如何在javascript函数checkMlaDeliveryType(mlaId)中设置ajax调用. // MLA Add disable express checkbox if delivery type is electronic $('.AddSelectedMla').change(function () { var deliveryType = checkMlaDeliveryType($('.AddSelectedMla').val()); // disable express option if delivery type is Electronic if (deliveryType == "Mail") { $(".mlaExpressIndicator").removeAttr("disabled"); }else{ $(".mlaExpressIndicator").attr('checked',false).attr("disabled",true); } }) // ajax call to get delivery type - "Mail" or "Electronic" function checkMlaDeliveryType(mlaId) { $.ajax({ type: "GET",url: "/Recipients/GetMlaDeliveryType/",data: mlaId,dataType:,success: }); } RecipientsController.cs public string GetMlaDeliveryType(int Id) { var recipientOrchestrator = new RecipientsOrchestrator(); // Returns string "Electronic" or "Mail" return recipientOrchestrator.GetMlaDeliveryTypeById(Id); } 编辑: 这是最终的javascript看起来如何工作 // MLA Add disable express checkbox if delivery type is electronic $('.AddSelectedMla').change(function () { checkMlaDeliveryType($('.AddSelectedMla').val()); }) // ajax call to get delivery type - "Mail" or "Electronic" function checkMlaDeliveryType(mlaId) { $.ajax({ type: 'GET',url: '@Url.Action("GetMlaDeliveryType","Recipients")',data: { id: mlaId },cache: false,success: function (result) { // disable express option if delivery type is Electronic if (result == "Mail") { $(".mlaExpressIndicator").removeAttr("disabled"); } else { $(".mlaExpressIndicator").attr('checked',true); } } }); } 解决方法$.ajax({ type: 'GET',url: '/Recipients/GetMlaDeliveryType',success: function(result) { } }); 然后修复你的控制器动作,使它返回一个ActionResult,而不是一个字符串. JSON适用于您的情况: public string GetMlaDeliveryType(int Id) { var recipientOrchestrator = new RecipientsOrchestrator(); // Returns string "Electronic" or "Mail" return Json( recipientOrchestrator.GetMlaDeliveryTypeById(Id),JsonRequestBehavior.AllowGet ); } 现在,您的成功回调将直接传递给您的模型的javascript实例.您无需指定任何dataType参数: success: function(result) { // TODO: use the result here to do whatever you need to do } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – ASP.Net MVC Action方法编译Razor cshtml文
- asp.net-mvc – 使用MVC时,如何调用Controller Action和Pas
- 客户端认证通过X509证书在asp.net
- asp.net-mvc – 在ASP.NET MVC应用程序中记录用户活动
- asp.net – Outputcache:VaryByHeader =“User-Agent”或V
- asp.net – 使用OptGroup组构建选择列表
- 关于asp.netCore3.0区域和路由配置
- asp.net-mvc-3 – 带有Npgsql和Entity Framework以及.Net F
- ASP.NET Core 1.0 ConfigurationBuilder().AddJsonFile(“a
- asp.net – 手动更新表单认证券:
推荐文章
站长推荐
- 在ASP.NET登录控件页面加载上设置焦点到文本框
- asp.net-mvc – Steve Sanderson的BeginCollecti
- IIS 8发布ASP.NET核心应用程序 – 正在使用的文件
- asp.net – 如何使用HTML.ActionLInk构建嵌套路由
- 有没有任何好的ASP.NET MVC2或MVC3作弊表?
- 树莓派-远程逗猫(二) —— 摄像头连接
- asp.net-mvc-4 – 什么是antlr3,为什么默认情况下
- entity-framework – EF Core:内置Created和Edi
- asp.net-mvc – 有人可以帮我理解为什么使用NHib
- ASP.NET oAuth通过SSL访问令牌
热点阅读