Jquery 远程属性不';字段为空时不触发

Jquery 远程属性不';字段为空时不触发,jquery,asp.net,asp.net-mvc,validation,jquery-validate,Jquery,Asp.net,Asp.net Mvc,Validation,Jquery Validate,我正在对表单上的特定字段使用RemoteAttribute。它的目的并不重要。重要的是,它需要在字段更改时启动验证操作。这对我来说很好,除非字段改为空白 我在谷歌上搜索了一下,但没有找到结果。有人知道RemoteAttribute是否确实触发空白字段,如果没有,如何强制触发吗 或者,是否可以自定义/修改远程验证器以触发空白值?如果元素的值为空,jQuery验证将不会运行任何规则。如果有minLength=2规则,但输入字段为空,则该规则不会失败。只有当用户输入1个字符时,才会失败 同样的想法也适

我正在对表单上的特定字段使用
RemoteAttribute
。它的目的并不重要。重要的是,它需要在字段更改时启动验证操作。这对我来说很好,除非字段改为空白

我在谷歌上搜索了一下,但没有找到结果。有人知道
RemoteAttribute
是否确实触发空白字段,如果没有,如何强制触发吗


或者,是否可以自定义/修改远程验证器以触发空白值?

如果元素的值为空,jQuery验证将不会运行任何规则。如果有minLength=2规则,但输入字段为空,则该规则不会失败。只有当用户输入1个字符时,才会失败

同样的想法也适用于远程验证器。如果该值为空,则它不会转到服务器


我认为插件中没有改变这种行为的选项。您需要创建一个自定义异步规则来获得所需的行为。这可能会变得有点棘手。你确定没有别的办法吗?在服务器中验证空字符串有意义吗?您能添加所需的规则吗?

虽然不是对您的问题的直接回答,但MVC的远程验证器只是调用jQuery验证的“远程”验证器,所以我认为这更像是一个jQuery验证问题,而不是一个MVC问题。@Eilon。你完全正确。我用
jQuery
重新标记了它。我不熟悉RemoteValidator,但它一定是由某些东西触发的……更改?如果值为空,是否不能触发更改事件?或者,在任何以空白输入结束的更改上,将falsy值传递给RemoteValidator?@user1167442,如果您可以进一步建议,这将非常有用……什么触发RemoteValidator?什么事件?服务器正在决定是否需要该特定字段。空字段所需的验证器触发器。为什么远程验证器会有所不同?我实际上是在尝试创建一个远程IsRequired验证器,它只基于服务器可用的信息。远程验证器没有任何不同。它与其他验证器具有相同的行为。如果字段为空,则必须触发所需的验证器,因为这是它的行为。如果字段为空,则不会触发所有其他验证器。您是否可能看到客户机上执行
必需的
验证器,而
远程验证器将根据定义调用服务器(除了
为空的情况)。我只是说它们是不同的,我也需要这种行为——当调用valid()时,它必须进行远程验证。原因:1)只有服务器知道在给定时间给定情况下是否需要该字段。2) 通过这一点,我可以在一个地方定义所有验证规则,这在处理大型复杂系统时变得非常重要!因此,这必须是插件设置中的一个选项。找到解决方法。请参见此处的解决方案: