首页 新闻 会员 周边

使用easyui的控件mvc客户端不能验证?

0
悬赏园豆:50 [已解决问题] 解决于 2012-12-19 13:14

一个日期控件,

              <div class="editor-label">
                                <label for="CommonModel_ReleaseDate">发布日期</label>
                            </div>
                            <div class="editor-field">
                                <input data-val="true" data-val-date="字段 发布日期 必须是日期。" data-val-required="×" id="CommonModel_ReleaseDate" name="CommonModel.ReleaseDate" type="text" value="" />
                                <span class="field-validation-valid" data-valmsg-for="CommonModel.ReleaseDate" data-valmsg-replace="true"></span>
                            </div>

我点击发布后会触发客户端验证,如图

但是如果给发布日期加上class="easyui-datebox",变成

              <div class="editor-label">
                                <label for="CommonModel_ReleaseDate">发布日期</label>
                            </div>
                            <div class="editor-field">
                                <input class="easyui-datebox" data-val="true" data-val-date="字段 发布日期 必须是日期。" data-val-required="×" id="CommonModel_ReleaseDate" name="CommonModel.ReleaseDate" type="text" value="" />
                                <span class="field-validation-valid" data-valmsg-for="CommonModel.ReleaseDate" data-valmsg-replace="true"></span>
                            </div>

那么我再点击发布,发布日期不进行客户端验证了。

页面头部引用文

<head>
    <meta name="viewport" content="width=device-width" />
    <title>添加</title>
    <script src="/Scripts/modernizr-2.6.2.js"></script>
    <script src="/Scripts/jquery-1.8.3.js"></script>
    <link href="/Scripts/EasyUi/themes/icon.css" rel="stylesheet"/>
    <script src="/Scripts/jquery.unobtrusive-ajax.js"></script>
    <script src="/Scripts/jquery.validate.js"></script>
    <script src="/Scripts/jquery.validate.unobtrusive.js"></script>
    <script src="/Scripts/EasyUi/easyloader.js"></script>
</head>

这种原因是怎么造成的,如果想让easyui-datebox跟其他空间一起进行进行validate.unobtrusive验证要如何做?

洞庭夕照的主页 洞庭夕照 | 初学一级 | 园豆:129
提问于:2012-12-19 10:12
< >
分享
最佳答案
0

看看  生成html中的的 input 是否 有所改变

收获园豆:50
Qlin | 老鸟四级 |园豆:2403 | 2012-12-19 10:28

生成的input 前后对比仅多了class="easyui-datebox"

洞庭夕照 | 园豆:129 (初学一级) | 2012-12-19 10:39

如果不加class="easyui-datebox",而是写脚本

easyloader.load("datebox", function () {
        $("#CommonModel_ReleaseDate").datebox();
    });

也是一样

洞庭夕照 | 园豆:129 (初学一级) | 2012-12-19 10:45

@洞庭夕照: 

easyui的控件都是自己生成了一套,原来的都是隐藏在傍边,是否真的一样,在浏览器中查看

Qlin | 园豆:2403 (老鸟四级) | 2012-12-19 11:03
其他回答(3)
0

不要使用easyui的验证,validate.unobtrusive验证足够了,我的www.langben.com的权限管理系统就是这样做的,嗯

腾飞刘 | 园豆:52 (初学一级) | 2012-12-19 10:16

我就是想不用easyui的验证,用validate.unobtrusive验证,要如何实现?

支持(0) 反对(0) 洞庭夕照 | 园豆:129 (初学一级) | 2012-12-19 10:18

@洞庭夕照: 楼主,问题解决了没有,我也遇到了同样的问题,求指教。。。

支持(0) 反对(0) linda-1989 | 园豆:112 (初学一级) | 2013-03-20 16:56

@linda-1989: 

同样的问题,解决了没?,求指教。。。

支持(0) 反对(0) panmin | 园豆:268 (菜鸟二级) | 2013-04-11 22:53
0

同样的问题,谁解决了啊,求指教。。。

panmin | 园豆:268 (菜鸟二级) | 2013-04-11 22:52

发现了是因为js引用的位置不对导致jquery和easyui的命名冲突,后者把前者的验证方法覆盖了,相当于重写了。

支持(0) 反对(0) panmin | 园豆:268 (菜鸟二级) | 2013-04-15 13:51
0

我感觉还是easyui做前端验证比较灵活。在web.config中关闭mvc的客户端验证

变形精怪 | 园豆:5 (初学一级) | 2013-08-06 19:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册