Tag: asp.net mvc 3

将动态json对象传递给C#MVC控制器

我正在使用.Net 4,MVC 3和jQuery v1.5做一些工作 我有一个JSON对象,可以根据调用它的页面进行更改。 我想将对象传递给控制器​​。 { id: 1, title: “Some text”, category: “test” } 我明白,如果我创建一个自定义模型,如 [Serializable] public class myObject { public int id { get; set; } public string title { get; set; } public string category { get; set; } } 并在我的控制器中使用它,例如 public void DoSomething(myObject data) { // do something } 并使用jQuery的.ajax方法传递对象,如下所示: $.ajax({ […]

FileExtension使用自定义validation进行validation会创建重复且无效的data- *属性

在我从前一个问题中提到的答案中尝试过之后,这个问题就出现了。 我完全按照本文的方式对image filesvalidation,而不是文章中提到的doc files 。 说明:我有一个type=file的input控件,用于上传图像文件,这存在于其中一个部分partialview 。 click partialview会在click button时加载。 要应用model提到的validations ,请明确unobtrusive向form添加unobtrusive的内容。 但是在按照上述文章中提到的所有设置后,我无法validationsubmit的文件,而且通过unobtrusive validation创建的data-*非常可疑或更好地说无效。 下面是显示我的设置是什么样的代码,这里是通过使用无效data-*属性进行不显眼validation而创建的html ,可能是因为validation未能发生。 加载部分视图Js $(‘.getpartial’).on(‘click’, function () { $(‘.loadPartial’).empty().load(‘/Home/GetView’,function () { var form = $(‘form#frmUploadImages’); form.data(‘validator’, null); $.validator.unobtrusive.parse(form); $(function () { jQuery.validator.unobtrusive.adapters.add(‘fileextensions’, [‘fileextensions’], function (options) { var params = { fileextensions: options.params.fileextensions.split(‘,’) }; options.rules[‘fileextensions’] = params; if (options.message) { options.messages[‘fileextensions’] = options.message; […]

在文本框上手动设置不显眼的validation错误

我正在做类似于远程validation的事情,除了我已经通过jquery手动调用我的调用并设置我必须设置的内容。 现在我的问题是,如果我想告诉validation器特定文本框无效(并阻止页面提交,突出显示文本框等)。 我怎么从代码中做到这一点? @Html.LabelFor(m => Model.Slug) @Html.TextBoxFor(m => Model.Slug) if (error) { $(‘#UrlMsg’).html(‘This name is already in use.’).fadeIn(‘fast’); //what should I do here for the rest of the validation? }

如何在jqGrid上编辑选定的单元格

我正在使用jqGrid进行内联编辑,但是当我选择一个单元格时,光标设置在该行的第一列,但我想知道是否有任何方法可以编辑我点击的当前单元格,而不是第一行。 提前致谢。

validation至少一个复选框

我已经看到其他一些post有同样的问题,但无法让解决方案为我工作,所以我发布了自己的问题。 让我先说一下我是JQuery和MVC的新手。 我有3个复选框,我需要确保至少检查其中一个。 我有一些使用Jquery自定义validation的工作。 但它在validation摘要中显示3条消息。 我希望它只显示一条消息,如果可能,不要在validation摘要中显示。 我怎么能实现这个目标? HTML代码 river1 river2 river3 JQuery的 $.validator.addMethod(“checkbox”, function (value, element) { return $(‘.checkbox:checked’).length > 0; }, ‘At least one river must be selected.’);

jquery客户端validation无法在MVC3局部视图中工作

我似乎无法使用以下部分视图进行客户端validation。 此视图位于父视图中的divTSettings div内。 从stackoverflow和其他网站尝试了很多东西,似乎没什么用。 有任何想法吗? @using (Ajax.BeginForm(“CreateT”, “TAdmin”, null, new AjaxOptions { HttpMethod = “Post”, UpdateTargetId = “divTSettings”}, new { id = “CreateTForm” })) { Name: @Html.ValidationMessage(“tName”) } $(function() { $(‘#CreateTForm’).validate({ rules: { tName: { required: true } }, messages: { tName: { required: ‘Name required’ } } }); $(“#CreateTForm”).removeData(“validator”); $(“#CreateTForm”).removeData(“unobtrusiveValidation”); $.validator.unobtrusive.parse(“#CreateTForm”); });

使用jquery ajax将参数传递给控制器

我创建了一个视图和一个控制器,控制器我想要返回一些搜索结果。 我使用jquery调用控制器 Search $(“#search”).click(function () { alert(‘called’); var p = { Data: $(‘#search’).val() }; $.ajax({ url: ‘/Ingredients/Search’, type: “POST”, data: JSON.stringify(p), dataType: “json”, contentType: “application/json; charset=utf-8”, success: function (data) { alert(data); }, error: function () { alert(“error”); } }); }); 我的控制器看起来像这样 [HttpPost] public ActionResult Search(string input) { var result = _db.Ingredients.Where(i => i.IngredientName == input); […]

单击“保存”按钮时,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 Controller- Url问题

我查看了之前发布的jQuery / MVC问题,但没有找到可行的答案。 我有以下JavaScript代码: $.ajax({ type: “POST”, url: ‘@Url.Action(“Search”,”Controller”)’, data: “{queryString:'” + searchVal + “‘}”, contentType: “application/json; charset=utf-8”, dataType: “html”, success: function (data) { alert(“here” + data.d.toString()); } }); 在调用Url时,post看起来像: NetworkError: 500 Internal Server Error – 有人可以向我解释为什么它会像这样(它背后的逻辑)返回它并为我提供一个有效的解决方案。 提前致谢! PS:附加信息:%22是<>字符的URL编码参考

ASP.net MVC 3 jQueryvalidation; 禁用Unobtrusive OnKeyUp?

有没有办法禁用某个validation器(信用卡)的jQueryvalidation,以便它只发生在onblur而不是onkeyup? 根据jQuery Validator文档,我认为我可以这样做: $(function () { $(“[data-val-creditcard]”).validate({ onkeyup: false }) }); 但是,它似乎没有起作用。 我还尝试在我的validation器上执行以下操作: public class CreditCardValidator : DataAnnotationsModelValidator { string _message; public CreditCardValidator(ModelMetadata metadata, ControllerContext context, CreditCardAttribute attribute) : base(metadata, context, attribute) { _message = attribute.ErrorMessage; } public override IEnumerable GetClientValidationRules() { var rule = new ModelClientValidationRule { ErrorMessage = _message, ValidationType = “creditcard” }; […]