zoukankan      html  css  js  c++  java
  • knockoutjs with绑定导致unobtrusive validation失效的问题

    如果最初的时候with绑定的对象是空的,那么with绑定内部的unobtrusive validation规则在提交的时候无法生效,无法进行验证。

    解决办法:

    在提交的时候(或者with绑定的对象非空值以后),先清除form对象的'validation'的data:

    $.removeData($form[0], 'validator');

    然后调用unobtrusive validation的parse函数重新对form内的控件进行解析。

    $.validator.unobtrusive.parse($form[0]);

    再调用valid()函数就可以正常验证了。

    with绑定的对象为空的时候,还会导致form内button(或其他控件)的jquery的事件处理代码不能正常触发。需要把button移动到with绑定范围之外。

     knockoutjs 对with 的说明:

    If the expression you supply evaluates to null or undefined, descendant elements will not be bound at all, but will instead be removed from the document.

    If the expression you supply involves any observable values, the expression will be re-evaluated whenever any of those observables change. Then, descendant elements will be cleared out, and a new copy of the markup will be added to your document and bound in the context of the new evaluation result.

  • 相关阅读:
    牌库读取的修复
    法术迸发(Spellburst)
    传染孢子的探索
    降低电脑功耗——降低笔记本风扇噪音
    Playfield 类方法的注释
    大陆争霸( 最短路变形)
    POJ 2406 Power String
    括号匹配
    HDU 1003 最大子段和
    6.19noip模拟赛总结
  • 原文地址:https://www.cnblogs.com/ddeef/p/3297776.html
Copyright © 2011-2022 走看看