鉴于以下视图模型: public class SomeViewModel { public bool IsA { get; set; } public bool IsB { get; set; } public bool IsC { get; set; } //… other properties } 我希望创build一个自定义属性,validation至less有一个可用的属性是真实的。 我设想能够将一个属性附加到一个属性,并像这样分配一个组名: public class SomeViewModel { [RequireAtLeastOneOfGroup("Group1")] public bool IsA { get; set; } [RequireAtLeastOneOfGroup("Group1")] public bool IsB { get; set; } [RequireAtLeastOneOfGroup("Group1")] public bool […]
在下面显示的代码中,如何使用jQuery或纯JavaScript获取函数val()中多选框的值? <script> function val() { //Get values of mutliselect drop down box } $(document).ready(function () { var flag = 0; $('#emp').change(function () { var sub = $("OPTION:selected", this).val() if (flag == 1) $('#new_row').remove(); $('#topics').val(''); var html = '<tr id="new_row" class="new_row"><td>Topics:</td><td> <select id="topic_l" name="topic_l" class="topic_l" multiple="multiple">'; var idarr = new Array(); var valarr = new Array(); […]
我试图validation一个窗体使用jQuery的validation插件。 我想要求用户至less检查一个组中的一个checkbox,以便提交表单。 这是我的jQuery代码: $().ready(function() { $("#subscribeForm").validate({ rules: { list: {required: "#list0:checked"} }, messages: { list: "Please select at least one newsletter"} }); }); 这里是html表单: <form action="" method="GET" id="subscribeForm"> <fieldset id="cbgroup"> <div><input name="list" id="list0" type="checkbox" value="newsletter0" >zero</div> <div><input name="list" id="list1" type="checkbox" value="newsletter1" >one</div> <div><input name="list" id="list2" type="checkbox" value="newsletter2" >two</div> </fieldset> <input name="submit" type="submit" value="submit"> 问题是,即使没有任何检查,表单提交。 我该如何解决这个问题?
在控制器中,我希望能够获得模型的客户端validation规则。 我已经使用数据注释附加了一些属性,并希望能够通过ajax调用回传到客户端,所以我可以自动构buildjqueryvalidation选项。 通常这是免费的与不显眼的东西,但我试图利用淘汰赛的绑定,而仍然不必复制服务器和客户端上的validation规则。 没有在模型服务器端使用reflection,我有点不确定如何实现这一点。
我希望我的“同意条款”checkbox是强制使用jQueryvalidation,在一个MVC3项目。 我目前从“MS数据注释属性”+“MS MVC3不显眼的jQueryvalidation”服务器/客户端干/ SPOTvalidation。 这是一个独立的testing(由MVC3生成的纯HTML)。 为什么它不工作,请? 运行时,validation可确保填写“联系人姓名”字段,但不关心checkbox的状态。 <!DOCTYPE html> <html> <head> <title>RequiredCheckbox</title> <script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script> <script type="text/javascript" src="//ajax.microsoft.com/ajax/jQuery.Validate/1.7/jQuery.Validate.js"></script> <script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/mvc/3.0/jquery.validate.unobtrusive.js"></script> <script type="text/javascript" language="javascript"> $(function () { // http://itmeze.com/2010/12/checkbox-has-to-be-checked-with-unobtrusive-jquery-validation-and-asp-net-mvc-3/ $.validator.unobtrusive.adapters.add("mandatory", function (options) { options.rules["required"] = true; if (options.message) { options.messages["required"] = options.message; } } }); $.validator.unobtrusive.parse(document); }); </script> </head> <body> <div> <form> <input data-val="true" data-val-mandatory="The […]
谁能告诉我为什么客户端validation不工作在我的MVC 4应用程序。 _layout.schtml @Scripts.Render("~/bundles/jquery") @RenderSection("scripts", required: false) 在我的web.config中有: <appSettings> <add key="ClientValidationEnabled" value="true" /> <add key="UnobtrusiveJavaScriptEnabled" value="true" /> </appSettings> 在我的login.cshtml页面中有: @using (Html.BeginForm()) { <div class="formscontent"> <ol> <li> @Html.LabelFor(x => x.AgreementNumber) <br /> @Html.TextBoxFor(x => x.AgreementNumber, new { size = "30" }) <br /> @Html.ValidationMessageFor(m => m.AgreementNumber) <br /> <br /> </li> <li> @Html.LabelFor(x => x.UserName) <br […]
我正在使用ASP .NET MVC 3与数据注释和jQueryvalidation插件。 有没有办法标记一个特定的字段(或某些数据注释)只应该validation服务器端? 我有一个电话号码字段,上面有一个掩码插件,正则expression式validation器在用户端疯狂。 正则expression式只是一个自动保险箱(如果有人决定破解javascriptvalidation),所以我不需要它在客户端运行。 但我仍然喜欢其他validation运行客户端。
我想手动触发validation,包括与jQueryvalidation显示错误消息。 我试图完成的情况是这样的一个forms: <form> <input id=i1> <button id=b1> <input id=i2> <button id=b2> </form> 单击b1时,只应validationi1。 当点击b2时,只有i2应该被validation。 但是,所有的字段都必须发布。 我怎样才能做到这一点? 我想过处理b1 / b2的点击事件,并手动validation表单的一部分。
我试图添加validation到我的forms与jQueryvalidation插件,但我有一个问题,当我使用input组插入错误消息。 $('form').validate({ rules: { firstname: { minlength: 3, maxlength: 15, required: true }, lastname: { minlength: 3, maxlength: 15, required: true } }, highlight: function(element) { $(element).closest('.form-group').addClass('has-error'); }, unhighlight: function(element) { $(element).closest('.form-group').removeClass('has-error'); } }); 我的代码: http : //jsfiddle.net/hTPY7/4/
JavaScript位: $(document).ready(function() { $('#form').submit(function(e) { e.preventDefault(); var $form = $(this); // check if the input is valid if(! $form.valid()) return false; $.ajax( { type:'POST', url:'add.php', data:$('#form').serialize(), success:function(response) { $("#answers").html(response); } }); }) }); HTML位: <input type="text" name="answer[1]" class="required" /> <input type="text" name="answer[2]" class="required" /> 所以这是我正在尝试使用的代码。 这个想法是在我使用Ajax发送表单之前,让所有input得到validation。 我已经尝试了很多版本,但是每次我都提交了,即使表单没有完全填写。 我所有的input都是“必需”类。 任何人都可以看到我做错了什么? 另外,我依赖于基于类的需求,因为我的input名称是用php生成的,所以我永远无法确定我得到的是什么名字[id]或inputtypes。 当我在“页面”中浏览时,我会显示/隐藏问题。 <input type="button" id="next" onClick="toggleVisibility('form3')" […]