首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >addClass到wrapAll结果

addClass到wrapAll结果
EN

Stack Overflow用户
提问于 2016-03-21 10:43:10
回答 2查看 127关注 0票数 1

我有这个date-picker框,我使用wrapAll向它添加了一个日历图像,下面的图片就是结果:

这是我的代码:

代码语言:javascript
复制
$(function() {
  $(".date-picker").datepicker({
    dateFormat: 'dd/mm/yy'
  });

  $(".date-picker").each(function() {
    $(this).add($(this).next()).wrapAll('<div class="imageInputWrapper"></div>');
  });
});
代码语言:javascript
复制
.imageInputWrapper {
  width: 172px;
  border: solid 1px white;
  background-color: white;
  display: flex;
  align-items: center;
  box-shadow: 0 2px 2px 0 #C2C2C2;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form:input class="date-picker" type="text" path="fromDate" style="width: 130px; height: 41px; background-color: white; border: none; outline: none; margin-left:5px" />

<img src="/resources/img/calendar.png" id="fromDateImgId"></td>

现在,我想检查用户是否没有插入任何日期,或者插入的日期是否无效,使用addClass将红色边框添加到上面的图片中,并使用以下代码:

代码语言:javascript
复制
$(document).ready(function() {
  $("#submitCreateCampaignForm").submit(function(e) {

    var $form = $(this);
    var errors = 0;
    var fromDate = $form.find("input[name=fromDate]").val()

    if (fromDate == "") {
      $form.find("input[name=fromDate]").addClass("red");
      errors++;
    }

    if (errors) e.preventDefault();
  });
});
代码语言:javascript
复制
.imageInputWrapper {
  width: 172px;
  border: solid 1px white;
  background-color: white;
  display: flex;
  align-items: center;
  box-shadow: 0 2px 2px 0 #C2C2C2;
}
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form:input class="date-picker" type="text" path="fromDate" style="width: 130px; height: 41px; background-color: white; border: none; outline: none; margin-left:5px" />

<img src="/resources/img/calendar.png" id="fromDateImgId"></td>

但我得到的结果是:

如何将红色边框添加到wrapAll的整个结果中

这是jsFiddle中的代码,不幸的是,我无法将form:input功能添加到Next按钮中:

jsFiddle

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-03-21 10:57:54

就用这个吧:

代码语言:javascript
复制
$form.find("input[name=fromDate]").parent().addClass("red");

您需要针对父元素(包装器)。

编辑

小提琴工作:https://jsfiddle.net/1otwoxsp/2/

票数 1
EN

Stack Overflow用户

发布于 2016-03-21 10:54:25

我会将输入和图像标记放在div标记中,然后将"red“类添加到div中,这将覆盖两个标记,其效果将达到预期的效果。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36128890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档