小编dad*_*and的帖子

如何使用addClassRules向类添加消息

我正在使用jQuery Validate来验证具有大量重复数据行的页面.由于空间有限,每行都有自己的验证摘要.

我使用addClassRules将验证规则应用于页面,但默认错误消息在摘要中过于通用(例如"字段是必需的,字段是必需的"等).

例:

jQuery.validator.addClassRules({
amount: {
    required: true,
    range: [0, 2000000]
},
comment: {
    maxlength: 51
},
owner: {
    notFirstOption: true
},
A: {
    required: function (element) {  
        return getParentElement($(element), "tr").find(".colB input.B").val().length > 0;
    },
    digits: true
}});
Run Code Online (Sandbox Code Playgroud)

您可以为每个验证类中的规则应用自定义消息吗?理想情况下,我喜欢这样的事情:

jQuery.validator.addClassMessages({
    amount: {
        required: "Amount is required",
        range: "Amount must be between 0 and 2,000,000"
    },
    comment: {
        maxlength: "Comment may be a maximum of 51 characters"
    },
    owner: {
        notFirstOption: "Please select an owner"
    },
    A: { …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-validate

19
推荐指数
2
解决办法
3万
查看次数

如何在AngularJS $ httpBackend ExpectGET中使用正则表达式

我在$ resource GET请求中传递了一个url作为参数.Angular是对此参数进行编码的url,并且在$ httpBackend.expectGET方法中匹配请求是挑剔的.

我看到你可以使用正则表达式来匹配预期的请求,但无法让它工作.我想匹配资源位置,但与任何"uri"查询字符串参数值匹配.

按Ctrl

var resource = $resource('../api/lookup');
resource.get({ uri: "http://www.something.com" }, function (data) {
  // do something
});
Run Code Online (Sandbox Code Playgroud)

测试

// mock out the $httpBackend response

$httpBackend.expectGET(/\.\.\/api\/lookup\?uri=.*/)).respond(200, { Response: "a response" });

// call my test method here

// ensure the $httpBackend work is done
$rootScope.$apply();
$httpBackend.flush();

// do assertions
Run Code Online (Sandbox Code Playgroud)

业力输出

Error: Unexpected request: GET ../api/lookup?uri=http%3A%2F%2Fwww.something.com

Expected GET /../api/lookup?uri=.*/
Run Code Online (Sandbox Code Playgroud)

谁能明白为什么我的正则表达式不匹配?

编辑

即使按照建议改进了正则表达式,我也无法使用' $ var '注入语法来实现这一点.我重写了测试,使用inject函数注入依赖项并确保我的测试安排的顺序是正确的.现在它的工作就像一个魅力!

regex angularjs httpbackend

13
推荐指数
2
解决办法
1万
查看次数

如何获取通用列表中的最后一个对象?

我将填充的SelectList传递给我的View,我想将所选值默认为列表中的最后一条记录.到目前为止我有:

IQueryable<BuildNumber> projBuildNos = tcRepository.GetProjectBuildNos();
BuildList = new SelectList(projBuildNos, "ID", "value", projBuildNos.Last().ID);
Run Code Online (Sandbox Code Playgroud)

我得到一个例外说"查询运算符'Last'不受支持但我似乎无法获取我的通用列表中的最后一条记录,但找不到任何示例.

此代码来自"表单视图模型",将选择列表从我的存储库传递回视图,我想我应该在这里执行此操作.不过我是generics/mvc/linq的新手,所以我很乐意接受其他建议.

在此先感谢您的帮助.如果您想了解更多信息,请与我们联系.

c# generics iqueryable

1
推荐指数
1
解决办法
4359
查看次数