Tag: asp.net mvc

如何在ASP.NET MVC中简化我的状态隔行扫描模式对话框

我需要在ASP.NET MVC项目中以渐进增强方式保持多对多modal dialog的状态。 在我的代码中,当javascript被禁用时,modal dialog将导航转到另一个页面并返回,但是当启用javascript时,对话框打开为jquery模式对话框,其确定。 我正在使用此方法从点击视图中选择操作。 下面的代码显示了一个主页面调用详细信息页面,有视图和控制器。 只有一个主控制器调用一个详细信息对话框但我有另一个视图/控制器,其中一个主控制器可以调用许多不同的详细信息对话框,有时一个对话框可以像主页一样运行并调用另一个嵌套的对话框。 一切都必须保持呼叫之间的状态。 问题是它非常复杂,有很多代码可以保持状态和管理对话框,我需要在任何地方重复相同的javascript和控制器代码,我希望有一些方法来简化它。 在视图方面需要将脚本通用转移到单独的.js文件并继续查看最少的javascript。 在控制器方面,我搜索了一些通用的方法来做它像filter或自定义绑定器,但无法找到。 CONTROLLER //###################################################################### using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using HYW.Models; using HYW.Helpers; namespace HYW.Controllers { public class TesteController : Controller { //——- private object getValue(string key) { return Session[key]; } private void setValue(string key, object value) { Session[key] = […]

如何将字典作为参数从jQuery / Ajax传递给ActionResult方法?

我正在使用jQuery在ASP.NET MVC中使用Http Post进行Ajax调用。 我希望能够传递一个价值词典。 我能想到的最接近的事情是传入一个多维的字符串数组,但实际传递给ActionResult方法的结果是一个包含“key / value”对的字符串连接的单维字符串数组。 例如,下面“values”数组中的第一项包含以下值: “id,200” 这是我的ActionResult方法的一个例子: public ActionResult AddItems(string[] values) { // do something } 这是我如何从jQuery调用方法的示例: $.post(“/Controller/AddItems”, { values: [ [“id”, “200”], [“FirstName”, “Chris”], [“DynamicItem1”, “Some Value”], [“DynamicItem2”, “Some Other Value”] ] }, function(data) { }, “json”); 有谁知道如何将一个Dictionary对象从jQuery传递给ActionResult方法而不是一个数组? 我真的想定义我的ActionResult像这样: public ActionResult AddItems(Dictionary values) { // do something } 有什么建议? 更新:我尝试在值中传入一个逗号,它基本上只是使得无法使用字符串解析实际解析键/值对。 通过这个: […]

MS MVCformsAJAXifying技术

我正在寻找最优雅的方式来ajaxify我的表单(使用jQuery)。 你怎么做到这一点?

单击“保存”按钮时,Jquery对话框部分视图服务器端validation

我有一个显示数据的表。 每行表都有“编辑”按钮。 单击编辑按钮时,将显示一个jquery对话框,其中包含用于编辑用户信息的表单以及保存和取消按钮。 表单只是部分视图按钮是部分视图的一部分。 $(“#editResult”).dialog({ title: ‘Edit Admin’, autoOpen: false, resizable: false, height: 500, width: 600, show: { effect: ‘drop’, direction: “up” }, modal: true, draggable: true, open: function (event, ui) { $(this).load(‘@Url.Action(“EditAdmin”, “AdminSearchResult”)’, { id: 1 , isEdit : true }); // pass par from function EditCurrentRow(par) in pacle of 1 }, close: function […]

使用带有Ajax的MVC 4上传文件

我正在使用MVC 4 + VS 2012 + Framework 4.5开发Web应用程序。 我有三个部分视图,它们是基于用户操作在我的索引页面上动态呈现的。 在三个局部视图中,一个局部视图具有上Upload Filefunction,其中包含一些输入字段,如文本框。 问题: 当用户单击保存按钮(存在于部分视图本身上)时。 我想将输入字段保存到我的数据库中,并将上传的文件存储在共享文件夹中。 我想使用Ajax实现这一点(上传文件并保存数据后,用户应该在同一视图上)。 我该如何实现呢? JQuery解决方案没问题。 我已尝试使用@Ajax.BeginForm但在上传文件后,发生了完整的回发。

将jqueryvalidation附加到替换元素

我有一个带有下拉列表的aspnet mvc表单,我用一个jquerycombobox代替。 原始的dropdownlist有一个客户端validation设置 – 使用不显眼的lib和标准的jqueryvalidation – ,我希望这个validation附加到combobox。 作为combobox生成的一部分,名称将从滴管中移除,而是设置在隐藏字段上。 我面临的问题是,当combobox无效时(在这种情况下为空),validation消息不会显示在combobox(隐藏字段)中。 有没有办法连接隐藏字段来validation下拉列表会有什么? 我尝试了几件事: 同时将隐藏字段的名称设置为下拉列表名称 – 复制data-val和data-val-required属性,但我没有运气。 我意识到,由于隐藏字段是动态添加的,validation器不会选择它,但是当validation通过名称(afaik)选择时它可能正常工作。 我试图重新解析表单,以便它拾取隐藏的字段,但原始规则仍然存在 – 这似乎不起作用。 我也尝试过不使用隐藏字段并将validation留在原始滴管上 – 当combobox中的项目设置时,也会在滴管中设置值。 这也不起作用 – 我认为因为下拉是隐藏的,因为如果我离开它显示validation工作正常。 我正在使用bootstrap jquerycombobox ,我稍微修改了它以使用选项组 有人可以提供一些帮助吗? 谢谢

使用ajax渲染部分视图

我已经检查了这个问题 ,它解决了我最初的问题。 但是我不希望仅在用户单击链接时呈现局部视图,我想在页面加载时呈现部分视图,并且可能在加载部分视图时显示进度指示器。 怎么实现呢? 非常感谢您阅读本文。

C#Web方法不是在javascript中调用

我创建一个Web方法,现在我在我的java脚本文件中调用它,但它给出了路径错误,它无法找到我给的路径.. Web方法代码是: [System.Web.Services.WebMethod] public static int ItemCount(string itemId) { int val = 0; Item itm = Sitecore.Context.Database.GetItem(itemId); val = itm.Children.Count; return val; } java脚本函数调用如: function GetItemCount(itemId) { var funRes = “”; debugger; try { if (itemId != null) { jQuery.ajax({ cache: false, type: “POST”, contentType: “application/json; charset=utf-8”, url: “/Views/GetItem.aspx/ItemCount”, data: { itemId: itemId }, dataType: […]

从ASP.NET MVC Action返回部分视图和JSON

我正在将KnockoutJS引入现有应用程序。 我的计划是修改/利用我们已经创建的现有部分视图,并使用Knockout的声明属性将它们绑定到JS视图模型。 当我对一个动作进行AJAX调用时,理想情况下我希望该动作返回局部视图的HTML和JSON对象。 然后我可以用HTML填充div,将JSON转换为Knockout对象并将其绑定到HTML。 但我无法弄清楚如何从行动中返回两者。 我需要完整的视图模型,因为我将更新它并最终将其发送回服务器。 我想过让动作返回局部视图(已绑定到模型),并在局部视图中,包含javascript以将.Net模型转换为Knockout对象。 但是我觉得像这样分散JS是混乱而且不可维护的。 我宁愿让一切都接近原来的ajax调用。 我想另一个选择是进行两次动作调用。 一个用于JSON,另一个用于局部视图。 但必须有一个更光滑的方式。 关于如何最好地做到这一点的任何想法?

字段日期必须是镶嵌在mvc中的日期

我正在做一个简单的MVC4 Internet应用程序,它允许在类别中添加一些项目。 这是我到目前为止所做的。 我在mvc视图中有一个日期选择器。 datepicker的脚本是这样的。 @Scripts.Render(“~/bundles/jqueryval”) $(function () { $(‘#dtItemDueDate’).datepicker({ dateFormat: ‘dd/mm/yy’, minDate: 0 }); }); 我的模特财产: [DisplayName(“Item DueDate”)] [Required] [DisplayFormat(DataFormatString = “{0:dd/MM/yyyy}”,ApplyFormatInEditMode = true)] [DataType(DataType.DateTime)] public DateTime? dtItemDueDate { get; set; } public char charCompleted { get; set; } 在我看来,我做到了这一点: @Html.TextBoxFor(m => m.dtItemDueDate) @Html.ValidationMessageFor(m => m.dtItemDueDate) 错误是这样的: The field Item DueDate must be a […]