繁体   English   中英

jQuery验证:根据不同的表单字段是否具有值,使用自定义消息添加必需的规则

[英]jquery validate: adding a required rule with custom message based on wether a different form field has a value

我知道这似乎是一个重复的问题,但是我已经阅读了所有其他文章,但他们的理解不尽相同:(

我有一些下拉菜单,如果它们还有其他选项,则选择一个值为“ 0”的选项,那么我需要核心响应的“到期日期”字段。

我尝试将规则放在对象的类中,并使用rules('add')函数。 这是我现在所在的位置:

$('[id^=ExpiryDate]').each(function() {

    $(this).rules('add',
    { required: function() {
        if ($('#q' + id).val() == '0') {
            return false;
        }
        else {
            return true;
        }
    } 
    }
);

我的到期日期字段的ID如“ ExpiryDate1”,“ ExpiryDate2”,而相应的下拉列表的ID如“ q1”和“ q2”。

这使我的脚本失败。 它不会在错误控制台或Firebug中提供任何错误。 但它也不会执行在它之后出现的任何JavaScript。

我有一种感觉,我确实很失落,很愚蠢。 但我已经盯着这个代码几个小时了,找不到它!

提前致谢!

尝试这个:

$('[id^=ExpiryDate]').each(function() {
  var id = $(this).attr('id').replace('ExpiryDate','');
  $(this).rules('add', { 
    required: function() {
      return $('#q' + id).val() !== '0';
    } 
  }
);

目前,您的id是未定义的,因此它没有找到任何元素。 其余只是较短的版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM