我正在编写一个jQuery插件,它使用一个属性来定义表单验证行为(是的,我知道已经有一个验证插件;这是我将要使用的学习练习).理想情况下,我想要这样的东西:
示例1 - 输入:
<input id="name" type="text" v:onvalidate="return this.value.length > 0;" />
Run Code Online (Sandbox Code Playgroud)
示例2 - 包装器:
<div v:onvalidate="return $(this).find('[value]').length > 0;">
<input id="field1" type="text" />
<input id="field2" type="text" />
<input id="field3" type="text" />
</div>
Run Code Online (Sandbox Code Playgroud)
示例3 - 预定义:
<input id="name" type="text" v:validation="not empty" />
Run Code Online (Sandbox Code Playgroud)
这里的目标是允许我的jQuery代码找出需要验证的元素(这已经完成),并且仍然有标记是有效的XHTML,这是我遇到的问题.我很确定这需要结合使用DTD和XML Schema,但我不太确定如何执行.
基于这篇文章,我创建了以下DTD:
<!ENTITY % XHTML1-formvalidation1
PUBLIC "-//W3C//DTD XHTML 1.1 +FormValidation 1.0//EN"
"http://new.dandoes.net/DTD/FormValidation1.dtd" >
%XHTML1-formvalidation1;
<!ENTITY % Inlspecial.extra
"%div.qname; " >
<!ENTITY % xhmtl-model.mod
SYSTEM "formvalidation-model-1.mod" >
<!ENTITY % xhtml11.dtd
PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" > …Run Code Online (Sandbox Code Playgroud)