json - 从 jquery 验证和 knockout 中失去理智

标签 json asp.net-mvc-3 jquery-validate knockout.js

几个月,几个月,几个月,我一直在尝试这样做,并且
个月。我真的因为试图让 Knockout 为我工作而流下了眼泪。
我有帖子可以追溯到去年试图做到这一点。一世
只是根本无法使用 knockout 和 asp.net 进行验证
mvc.
如果我把 $.validator.unobtrusive.parse("#__frmAspect");排队,我
获得验证,但随后它不服从提交处理程序。如果我
把它拿出来,它服从提交处理程序,但它没有得到任何
验证。
这是我的代码 - 全部。 (我认为)
主视图
http://pastie.org/2016031
编辑器 View
http://pastie.org/2016043
查看模型
http://pastie.org/2016045
Controller 和模型绑定(bind)器
http://pastie.org/2016052
html输出
http://pastie.org/2016100
HtmlTags 类
http://pastie.org/2016107
helper
http://pastie.org/2016111
我已经坚持了 8 个月。任何人都可以
请帮我?我想要的只是将数据提交回服务器。一世
不想要ajax,我不想要回调。我不想要任何花哨的东西。
我只想发送我的JSON正确后模型回服务器
客户端验证,并让它获取数据。这就是我想要的。我愿意
不想用$.ajax方法。我有我想做的理由
这样,它们与问题无关。
对 RP Niemeyer 的回应
是的,成功了!!!!!!!!!! 我的天啊。我欠你的,过去 8 个月
我生命中的。我想给你寄一个含有原始卡路里的芝士蛋糕
品味和互联网。
我觉得我可以从这个问题的沮丧中冲出屏幕
让我。如果这个问题听起来很粗鲁,我很抱歉,但在哪里
我在网上见过这种东西。我确定任何其他开发人员
能够理解一个看似不存在的问题的挫败感
有答案。
我不知道你是怎么得出这个结论的,我不明白
正是它起作用的原因。
我用对象实例化 View 模型尝试了同样的事情(其中
View 模型不是它自己的对象,而是另一个对象的实例)
它没有用。换句话说,如果我这样做..

var aspect = function () { 
  this.Id = ko.observable(); 
 // other variables, using ';' and 'this' keyword 
 this.Save = function() { 
   alert('We got to the save function'); 
 } 
} 

var viewModel = new aspect(); 
ko.applyBindings(viewModel, $("#__frmAspect")[0]); 
// attach the jquery unobtrusive validator 
$.validator.unobtrusive.parse("#__frmAspect"); 
// bind the submit handler to unobtrusive validation. 
$("#__frmAspect").data("validator").settings.submitHandler = 
viewModel.Save; 
这种方法不起作用。
我能麻烦您向我解释一下有什么不同吗?为什么?我是
完全迷失了。

最佳答案

我认为问题在于不显眼的库已经在表单上设置了验证,因此您实际上需要进入并设置 submitHandler 如下:

// attach the jquery unobtrusive validator
$.validator.unobtrusive.parse("#__frmAspect");

// bind the submit handler to unobtrusive validation.
$("#__frmAspect").data("validator").settings.submitHandler = viewModel.Save;

http://jsfiddle.net/rniemeyer/V8MhG/

关于json - 从 jquery 验证和 knockout 中失去理智,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6233747/

相关文章:

javascript - Angularjs 从 Json 对象中删除子对象

java - 将对象插入数组json数据

javascript - 使用 jQuery 验证插件 : onfocusout, onkeyup 在生产站点上无法按预期工作

java - Jackson - 使用多态类型列表反序列化对象

java - 数组中的数组 - Java 代码

asp.net-mvc-2 - 从 ASP.NET MVC 打印 Avery 标签

asp.net-mvc-3 - 无法在 ASP.NET MVC3 中的部分 View 中访问 ViewBag

asp.net-mvc - asp.net mvc3 razor 语法通过反射将模型转换为其子类

JQuery 验证不适用于 IE

jquery-validate - JQuery 验证 : Custom message not working