javascript - 如何在div标签上添加斑马条纹背景

标签 javascript jquery html css

我想用 div 标签交替显示行颜色。当用户点击添加更多按钮时,我的第二个 div 是附加的

<div id="dynamic_field">    
    <div class="row"> 
        <div class="col s12"  style="padding-top: 12px;">
            <div class="col s12 m12 ">
                <?php if($ViewID!=''){
        $edu_view=mysql_query("SELECT * FROM tbl_student_education WHERE studentid= '$v_stduentid' and student_resume_id='$ViewID'");
        while($Get_edu=mysql_fetch_array($edu_view)) {?>
             <div class="col s12 m12 "><label for="title">Certificate Title</label>
                <textarea  class="materialize-textarea" style="padding: 0px;" id="title" name="title[]"><?php echo $Get_edu['degree'];?></textarea>
             </div>
             <div class="col s12 m12 "><label for="title">School / College, City</label>

                <textarea  id="location" name="location[]" class="materialize-textarea" style="padding: 0px;"><?php echo $Get_edu['location'];?></textarea>
            </div>
              <div class="col s3 m3 "><label for="title">Marks</label>
                <input id="marks" name="marks[]" type="text" value="<?php echo $Get_edu['marks'];?>"  />
             </div>
             <div class="col s3 m3 "><label for="title">Division</label>
                <input id="divsion" name="divsion[]" type="text" value="<?php echo $Get_edu['division'];?>" placeholder="1st" />
             </div>
              <div class="col s3 m3 "><label for="title">Year</label>
                <input id="year" name="year[]" type="text" value="<?php echo $Get_edu['passing_year'];?>"  />
             </div>
        <?php } } ?>        
                <?php if($EditID!=''){
        $edu_edit=mysql_query("SELECT * FROM tbl_student_education WHERE studentid= '$e_stduentid' and student_resume_id='$EditID'");
        while($Get_edu=mysql_fetch_array($edu_edit)) {?>
             <div class="col s12 m12 "><label for="title">Certificate Title</label>
                <textarea  class="materialize-textarea" style="padding: 0px;" id="title" name="title[]"><?php echo $Get_edu['degree'];?></textarea>
             </div>
             <div class="col s12 m12 "><label for="title">School / College, City</label>

                <textarea  id="location" name="location[]" class="materialize-textarea" style="padding: 0px;"><?php echo $Get_edu['location'];?></textarea>
            </div>
              <div class="col s3 m3 "><label for="title">Marks</label>
                <input id="marks" name="marks[]" type="text" value="<?php echo $Get_edu['marks'];?>"  />
             </div>
             <div class="col s3 m3 "><label for="title">Division</label>
                <input id="divsion" name="divsion[]" type="text" value="<?php echo $Get_edu['division'];?>" placeholder="1st" />
             </div>
              <div class="col s3 m3 "><label for="title">Year</label>
                <input id="year" name="year[]" type="text" value="<?php echo $Get_edu['passing_year'];?>"  />
             </div>


        <?php } ?>
         <div class="col s3 m3"><button type="button" name="add" id="add" class="btn btn-success pull-right">Add More</button></div>
    <?php   } ?>
                <?php if($ViewID=='' && $EditID==''){?>
             <div class="col s12 m12 "><label for="title">Certificate Title</label>
                <textarea  class="materialize-textarea" style="padding: 0px;" id="title" name="title[]">Higher School Secondary Certificate</textarea>
             </div>
             <div class="col s12 m12 "><label for="title">School / College, City</label>

                <textarea  id="location" name="location[]" class="materialize-textarea" style="padding: 0px;"></textarea>
            </div>
              <div class="col s3 m3 "><label for="title">Marks</label>
                <input id="marks" name="marks[]" type="text" value=""  />
             </div>
             <div class="col s3 m3 "><label for="title">Division</label>
                <input id="divsion" name="divsion[]" type="text" value="" placeholder="1st"  />
             </div>
              <div class="col s3 m3 "><label for="title">Year</label>
              <select id="year"  name="year[]">
                <option value="2019" selected>2019</option>
                <option value="2018">2018</option>
                <option value="2017">2017</option>

              </select>
             </div>

             <div class="col s3 m3"><button type="button" name="addmoreEdu" id="addmoreEdu" class="btn btn-success pull-right" >Add More</button></div>
             <?php } ?>  
            </div>
        </div> 
    </div>
</div>

我确实尝试添加这个 CSS:

#dynamic_field > div:nth-of-type(odd) {
    background: #f5f5f5;
}

问题是,当用户点击添加更多按钮时,行中的背景颜色没有改变。这是我的 jQuery 代码,当单击“添加更多”按钮时会附加 div。

$(document).ready(function(){  
  var i=0;  
  $('#addmoreEdu').click(function(){ 
       i++;  
       $('#dynamic_field').append('<div id="row'+i+'"><div class="col s12 m12 "><label for="title">Certificate Title</label><textarea  class="materialize-textarea" style="padding: 0px;" id="title'+i+'" name="title[]">Secondary School Certificate</textarea></div><div class="col s12 m12 "><label for="title">School / College, City</label><textarea  id="location'+i+'" name="location[]" class="materialize-textarea" style="padding: 0px;"></textarea></div><div class="col s3 m3 "><label for="title">Marks</label><input id="marks'+i+'" name="marks[]" type="text" value=""  /></div><div class="col s3 m3 "><label for="title">Division</label><input id="divsion'+i+'" name="divsion[]" type="text" value="" placeholder="1st"  /></div><div class="col s3 m3 "><label for="title">Year</label><select name="year[]"><option value="2019" selected>2019</option><option value="2018">2018</option><option value="2017">2017</option><option value="2016">2016</option><option value="2015">2015</option></select></div><div class="col s3 m3"><button type="button" name="remove" id="'+i+'" class="btn btn-danger button btn_remove">X</button></div></div>');  
  $('select').material_select('');

$('.btn_remove').click(function(){ 
       var button_id = $(this).attr("id");   
       $('#row'+button_id+'').remove();  
  });
});
});

这很容易在 tr 标签上应用斑马条纹,但我对如何在 div 标签上应用它感到困惑。

最佳答案

$(document).ready(function(){  
      var i=0;
        
      $('#addmoreEdu').click(function(){ 
           i++;  
           
           $('#dynamic_field').append('<div class="row"><div id="row'+i+'"><div class="col s12 m12 "><label for="title">Certificate Title</label><textarea  class="materialize-textarea" style="padding: 0px;" id="title'+i+'" name="title[]">Secondary School Certificate</textarea></div><div class="col s12 m12 "><label for="title">School / College, City</label><textarea  id="location'+i+'" name="location[]" class="materialize-textarea" style="padding: 0px;"></textarea></div><div class="col s3 m3 "><label for="title">Marks</label><input id="marks'+i+'" name="marks[]" type="text" value=""  /></div><div class="col s3 m3 "><label for="title">Division</label><input id="divsion'+i+'" name="divsion[]" type="text" value="" placeholder="1st"  /></div><div class="col s3 m3 "><label for="title">Year</label><select name="year[]"><option value="2019" selected>2019</option><option value="2018">2018</option><option value="2017">2017</option><option value="2016">2016</option><option value="2015">2015</option></select></div><div class="col s3 m3"><button type="button" name="remove" id="'+i+'" class="btn btn-danger button btn_remove">X</button></div></div></div>');  
	   
	$('.btn_remove').click(function(){ 
           var button_id = $(this).attr("id");   
           $('#row'+button_id+'').remove();  
      });
 	});
 	});
#dynamic_field > div:nth-of-type(even) {
    background: #f5f5f5;
}
 <div id="dynamic_field"> 	
		<div class="row"> 
     		<div class="col s12"  style="padding-top: 12px;">
        <div class="col s12 m12 "><label for="title">Certificate Title</label>
     		 	 	<textarea  class="materialize-textarea" style="padding: 0px;" id="title" name="title[]">Higher School Secondary Certificate</textarea>
     		 	 </div>
     		 	 <div class="col s12 m12 "><label for="title">School / College, City</label>
     		 	
     		 	 	<textarea  id="location" name="location[]" class="materialize-textarea" style="padding: 0px;"></textarea>
    			</div>
     		 	  <div class="col s3 m3 "><label for="title">Marks</label>
     		 	 	<input id="marks" name="marks[]" type="text" value=""  />
     		 	 </div>
     		 	 <div class="col s3 m3 "><label for="title">Division</label>
     		 	 	<input id="divsion" name="divsion[]" type="text" value="" placeholder="1st"  />
     		 	 </div>
     		 	  <div class="col s3 m3 "><label for="title">Year</label>
     		 	  <select id="year"  name="year[]">
     		 	  	<option value="2019" selected>2019</option>
     		 	  	<option value="2018">2018</option>
     		 	  	<option value="2017">2017</option>
     		 	  	<option value="2016">2016</option>
     		 	  	<option value="2015">2015</option> 	  	
     		 	  </select>
     		 	 </div>
     		 	 
     		 	 <div class="col s3 m3"><button type="button" name="addmoreEdu" id="addmoreEdu" class="btn btn-success pull-right" >Add More</button></div>
        
        </div>
    </div>
 </div>
 <script src="//code.jquery.com/jquery-3.3.1.min.js"></script>

现在这一切都如我所料完美地工作了..我在我的 div 中做了一些改变然后在 div 上显示斑马条纹

关于javascript - 如何在div标签上添加斑马条纹背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54216399/

相关文章:

jquery - 切换 CSS 自动展开高度

javascript - 漏洞? JQuery UI 选项卡自动删除父级内联样式

jquery - 不要将 css 应用于 div

javascript - 使浏览器窗口的元素高度

javascript - 控制台中对象的输出失败

html - 带按钮的 Bootstrap 输入组文本区域

html - 静态图像。不随页面大小移动

javascript - 目标父 div 包含来自 iframe 的 iframe

javascript - 如何捕获来自另一个域的 iframe 的点击?

javascript - Vue动态背景图片内联组件