js/jQuery常见操作 之各种语法例子(包括jQuery中常见的与索引相关的选择器)

js/jQuery常见操作 之各种语法例子(包括jQuery中常见的与索引相关的选择器)

  • 1. 操作table常见的
    • 1.1 动态给table添加title(指定td)
      • 1.1.1 给td动态添加title(含:获取tr的第几个td)
      • 1.1.2 动态加工td提示信息(非同一单元格组合)
      • 1.1.3 总结
    • 1.2 给 指定行tr 添加样式
  • 2 根据name获取复选框的情况
    • 2.1 所有的复选框
    • 2.2 所有的选中的复选框
    • 2.3 所有的未选中的复选框
  • 3. 获取复选框的选中状态
  • 4. js/jQuery实现隐藏div等
    • 4.1 js实现
    • 4.2 jQuery实现
  • 5. 其他语法
    • 5.1 .eq(index)
    • 5.2 :eq() Selector
      • 5.2.1 jQuery( ":eq(index)" )
      • 5.2.2 其他与索引相关的选择器
    • 5.3 :nth-child(n)
    • 5.4 :last 与 :last-child
  • 6. 参考

1. 操作table常见的

1.1 动态给table添加title(指定td)

1.1.1 给td动态添加title(含:获取tr的第几个td)

  • 效果如下:
    在这里插入图片描述
  • 实现代码如下:
    • 核心代码,如下:
      <script>
         // 1.1 给name为“title_test”添加title
         $("td[name='title_test']").each(function(){
             $(this).mouseover(function(){
                 $(this).attr("title","年龄-"+this.innerHTML);
             });
         });
      
         // 1.2 second-child-----本tr的第二个td
         $("#dogs_data tr td:second-child").each(function(){
             console.log(this.innerHTML);// 获取td单元格里的值
             $(this).attr("title","编号-"+this.innerHTML);
         });
      
         // 1.3 last-child-----本tr的最后一个td,ast-child+1-----本tr的倒数第二个td
         $("#dogs_data tr td:last-child+1").each(function(){
             console.log(this.innerHTML);// 获取td单元格里的值
             $(this).attr("title","姓名-"+this.innerHTML);
         });
      </script>
      
    • 完整代码,如下:
      <!DOCTYPE html>
      <html lang="en">
      <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Document</title>
          <!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js"></script> -->
          <script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
      
          <style>
              table {
                  border-collapse: collapse;
              }
              table tr th,td{
                  border: 1px solid;
                  width: 60px;
                  text-align: center;
              }
      
              thead tr:hover{
                  background-color: rgb(255, 127, 127);
              }
              tbody tr:hover{
                  background-color: aquamarine;
              }
          </style>
      </head>
      <body>
          <script>
      
          </script>
      
          <table celllspacing="0" id="dogs_data">
              <thead>
                  <tr>
                      <th>
                          <input type="checkbox" id="checkAllOrNo" />
                      </th>
                      <th>编号</th>
                      <th>姓名</th>
                      <th>年龄</th>
                  </tr>
              </thead>
              <tbody>
                  <tr>
                      <td>
                          <input type="checkbox" name="dogIds" value="A1001"/>
                      </td>
                      <td>A1001</td>
                      <td>麦兜</td>
                      <td name="title_test">3</td>
                  </tr>
                  <tr>
                      <td>
                          <input type="checkbox" name="dogIds" value="A1002"/>
                      </td>
                      <td>A1002</td>
                      <td>贝塔</td>
                      <td name="title_test">2</td>
                  </tr>
                  <tr>
                      <td>
                          <input type="checkbox" name="dogIds" value="A1003"/>
                      </td>
                      <td>A1003</td>
                      <td>泡泡</td>
                      <td name="title_test">6</td>
                  </tr>
              </tbody>
          </table>
      
          <script>
              // 1.1 给name为“title_test”添加title
              $("td[name='title_test']").each(function(){
                  $(this).mouseover(function(){
                      $(this).attr("title","年龄-"+this.innerHTML);
                  });
              });
      
              // 1.2 second-child-----本tr的第二个td
              $("#dogs_data tr td:second-child").each(function(){
                  console.log(this.innerHTML);// 获取td单元格里的值
                  $(this).attr("title","编号-"+this.innerHTML);
              });
      
              // 1.3 last-child-----本tr的最后一个td,ast-child+1-----本tr的倒数第二个td
              $("#dogs_data tr td:last-child+1").each(function(){
                  console.log(this.innerHTML);// 获取td单元格里的值
                  $(this).attr("title","姓名-"+this.innerHTML);
              });
          </script>
      </body>
      </html>
      

1.1.2 动态加工td提示信息(非同一单元格组合)

  • 简单例子如下(复杂需求根据需求自行修改):
    • 例子1,核心代码如下:
      // 在别的单元格提示指定单元格的内容----方式1
      // $("td[name='title_test2']").each(function(){
      //     $(this).mouseover(function(){
      //         var tr = $(this).parent(); //通过td找tr
      //         var td_second = tr.children("td").eq(1);//找到本tr的第二个td
      //         console.log(td_second.html());
      //         $(this).attr("title","姓名-"+td_second.html());//即:在别的单元格提示指定单元格的内容
      //     });
      // });
      
      // 在别的单元格提示指定单元格的内容----方式2
      $("#dogs_data tr td:last-child").each(function(){
          $(this).mousemove(function(){})
          var tr = $(this).parent(); //通过td找tr
          var td_second = tr.children("td").eq(1);//找到本tr的第二个td
          // console.log(td_second.html());
          $(this).attr("title","姓名-"+td_second.html());//即:在别的单元格提示指定单元格的内容
      });
      
    • 例子2(获取父标签的最后一个td子标签的第一个p子标签),核心代码如下:
      // 获取父标签的最后一个td子标签的第一个<p>子标签
      $("#dogs_data tr td:first-child").each(function(){
          $(this).click(function(){
              // 第一种写法
              var aa = $(this).parent().children("td").eq(4).children('p').first().html();
              console.log(aa);
      
              // 第一种写法
              var bb = $(this).parent().children("td:last-child").children('p').first().html();
              console.log(bb);
          })
      });
      
  • 完整代码如下:
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js"></script>
        <!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.3.2/jquery.min.js"></script> -->
    
        <style>
            table {
                border-collapse: collapse;
            }
            table tr th,td{
                border: 1px solid;
                width: 100px;
                text-align: center;
            }
    
            thead tr:hover{
                background-color: rgb(255, 127, 127);
            }
            tbody tr:hover{
                background-color: aquamarine;
            }
            meter{
                height: 40px;
                width: 100px;
            }
        </style>
    </head>
    <body>
        <script>
    
        </script>
    
        <table celllspacing="0" id="dogs_data">
            <thead>
                <tr>
                    <th>
                        <input type="checkbox" id="checkAllOrNo" />
                    </th>
                    <th>编号</th>
                    <th>姓名</th>
                    <th>年龄</th>
                    <th>玩具球电量</th>
                </tr>
            </thead>
            <tbody>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1001"/>
                    </td>
                    <td>A1001</td>
                    <td>麦兜</td>
                    <td>3</td>
                    <td name="title_test2">
                        <p>大球电量:</p>
                        <meter max="100" min="0" value="10" low="20" high="80"></meter>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1002"/>
                    </td>
                    <td>A1002</td>
                    <td>贝塔</td>
                    <td>2</td>
                    <td  name="title_test2">
                        <p>小球电量:</p> 
                        <meter max="100" min="0" value="60" low="20" high="80"></meter>
                    </td>
                </tr>
                <tr>
                    <td>
                        <input type="checkbox" name="dogIds" value="A1003"/>
                    </td>
                    <td>A1003</td>
                    <td>泡泡</td>
                    <td>6</td>
                    <td  name="title_test2" >
                        <p>红色球电量:</p>
                        <meter max="100" min="0" value="20" low="20" high="80"></meter>
                    </td>
                </tr>
            </tbody>
        </table>
    
        <script>
    
            // 在别的单元格提示指定单元格的内容----方式1
            // $("td[name='title_test2']").each(function(){
            //     $(this).mouseover(function(){
            //         var tr = $(this).parent(); //通过td找tr
            //         var td_second = tr.children("td").eq(1);//找到本tr的第二个td
            //         console.log(td_second.html());
            //         $(this).attr("title","姓名-"+td_second.html());//即:在别的单元格提示指定单元格的内容
            //     });
            // });
    
            // 在别的单元格提示指定单元格的内容----方式2
            $("#dogs_data tr td:last-child").each(function(){
                $(this).mousemove(function(){})
                var tr = $(this).parent(); //通过td找tr
                var td_second = tr.children("td").eq(1);//找到本tr的第二个td
                // console.log(td_second.html());
                $(this).attr("title","姓名-"+td_second.html());//即:在别的单元格提示指定单元格的内容
            });
    
            // 获取父标签的最后一个td子标签的第一个<p>子标签
            $("#dogs_data tr td:first-child").each(function(){
                $(this).click(function(){
                    // 第一种写法
                    var aa = $(this).parent().children("td").eq(4).children('p').first().html();
                    console.log(aa);
    
                    // 第一种写法
                    var bb = $(this).parent().children("td:last-child").children('p').first().html();
                    console.log(bb);
                })
            });
    
        </script>
    </body>
    </html>
    

1.1.3 总结

  • 给td添加title方法很多,简单直接的方法就是直接写属性,列表方式也可以直接title提示列表中指定td的数据,如果能简单获取的,使用上面方式反而是复杂的,上面方式只是说语法 以及 有些不跟列表同时返回页面的提示(需要触发事件请求后台返回title的提示数据,然后动态设置tilte的情况)可以使用上面的方式添加。

1.2 给 指定行tr 添加样式

  • 效果如下:
    在这里插入图片描述
  • 实现代码如下:
    • 样式
      .one_tr_style{
          background-color: aquamarine;
      }
      
    • js/jQuery
      <script>
          $(document).ready(function(){
              $("tr:eq(1)").find("td").addClass("one_tr_style");
          });
      </script>
      

2 根据name获取复选框的情况

2.1 所有的复选框

  • 代码如下:
    $("input[name='items']").each(function(){
    	console.log($(this).val());
    });
    

2.2 所有的选中的复选框

  • 代码如下:
    $("input[name='items']:checked").each(function(){
    	console.log($(this).val());
    });
    

2.3 所有的未选中的复选框

  • 代码如下:
    $("input[name='items']:not(:checked)").each(function(){
    	selectedNum ++;//计算没有选中的项目个数
    });
    

3. 获取复选框的选中状态

  • 根据ID获取,使用 .is(":checked") 如下:
    // 点击 全选/全不选 复选框----使用s(":checked")
    $("#checkAllOrNo").click(function(){
    	$("input[name='items']").each(function(){
    		// 选中状态与 全选/全不选 的复选框保持一致即可
    		this.checked = $("#checkAllOrNo").is(":checked");
    	});
    });
    
  • jQuery循环中常用判断(使用this.checked
    //3.反选(直接取反)
    $("#fanxuan").click(function(){
    	$("input[name='items']").each(function(){
    		this.checked = !(this.checked);//直接取反
    	});
    });
    

4. js/jQuery实现隐藏div等

4.1 js实现

  • 代码里含部分jQuery,不想摘出来了,自己根据需要拿,代码如下:
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.js"></script>
        <!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/1.3.2/jquery.min.js"></script> -->
    
        <style>
            .visible {
               display: block;
            }
            .hidden {
               display: none;
            }
        </style>
    </head>
    <body>
        <script>
            $(document).ready(function(){
                // 隐藏 div_1-----方式1 .css
                $("#div_1").css("display","none");
                // 隐藏 div_2-----方式2 .visibility(这种隐藏方式占空间,页面显示空白一块)
                // document.getElementById("div_2").style.visibility = "hidden"; 
                // 隐藏 div_4  这个写在这里生效-----方式3 .classList
                document.getElementById("div_4").classList.add("hidden");
                // 显示div_3
                $("#div_2").css("display","");
    
                // 隐藏input_1
                $("#input_1").css("display","none");
                // 隐藏input_2
                document.getElementById("input_2").type = "hidden";
                // 隐藏input_2——通过设置input的style属性display为none来隐藏input
            	document.getElementById("input_2").style.display = "none";
                // 显示input_3
                document.getElementById("input_3").type = "text";
    
            });
            function hideDiv_2() {
                // -----方式4 .display
                // 这个需要借助函数,写在事件触发才生效,写在外面不生效,但是使用classList时不用事件也是ok的
                document.getElementById("div_2").style.display = "none";
            }
            
            function useclassListHideDiv() {
                document.getElementById("div_4").classList.remove("visible");//这个可以不要
                document.getElementById("div_4").classList.add("hidden");//但是这个必须要,只有这一个就可以
            }
            function useclassListShowDiv() {
                document.getElementById("div_4").classList.remove("hidden");//只有这一个就可以
                // document.getElementById("div_4").classList.add("visible"); // 只有这个不生效,所以这个可以不要
            }
            
        </script>
    
        <div id="div_1">我是div1</div>
        <div id="div_2">我是div2</div>
        <div id="div_3">我是div3</div>
        <div id="div_4">我是div4</div>
    
    
        <input type="text" id="input_1" name="test" value="aa"/>
        <input type="text" id="input_2" name="test" value="bb"/>
        <input type="hidden" id="input_3" name="test" value="cc"/>
    
        <br/><br/>
        <button onclick="hideDiv_2()">隐藏div2</button>
        <button onclick="useclassListHideDiv()">classList隐藏div4</button>
        <button onclick="useclassListShowDiv()">classList显示div4</button>
    
    </body>
    </html>
    

4.2 jQuery实现

  • 核心代码如下:
    <script>
        $(document).ready(function(){
            // 1. 隐藏 div
            // 1.1 通过attr设置属性
            $("#div_1").attr("style","display:none;");//隐藏div
            $("#div_2").attr("style","display:block;");//显示div
    
            // 1.2 通过hide与show方法
            $("#div_3").hide();//隐藏div
            $("#div_4").show();//显示div
    
            // 1.3 通过css方法设置
            $("#div_5").css("display","none");//隐藏div
            $("#div_6").css("display","block");//显示div
    
            // 2. 隐藏input
            // 隐藏input_1
            $("#input_1").css("display","none");
            // 隐藏input_2
            $("#input_2").attr("style","display:none;");//隐藏
            // $("#input_2").attr("style","display:block;");//显示
        });
    </script>
    

5. 其他语法

5.1 .eq(index)

  • 解释:
    一个整数,指示元素的从 0 开始的位置。负数的话,从-1开始(最后一个index)
  • 例子如下
    • 效果如下:
      在这里插入图片描述
    • 核心代码如下:
      <script>
          $(document).ready(function(){
              $( "li" ).eq( 1 ).css( "background-color", "red" );
              $( "li" ).eq( -2 ).css( "background-color", "green" );
      
              $( "body" ).find( "div" ).eq( 1 ).addClass( "blue" );
          })
      </script>
      

5.2 :eq() Selector

5.2.1 jQuery( “:eq(index)” )

  • 例子1:

    • 效果如下:
      在这里插入图片描述
    • 实现代码如下:
      <script>
        // 针对所有td不是单行td
        $( "td:eq( 2 )" ).css( "background-color", "red" );
        $( "td:eq( 3 )" ).css( "background-color", "green" );
      
        // 针对第三行 的 第二个td
        $( "tr:eq(2) td:eq( 1 )" ).css( "background-color", "pink" );
      </script>
      
  • 例子2:

    • 效果:
      在这里插入图片描述
    • 代码:
      .my_background_style{
         background-color: red;
      }
      
      <script>
        $( "td:eq( 0 )" ).addClass( "my_background_style" );
        $( "td:eq( 8 )" ).addClass( "my_background_style" );
      
        // 针对第2行 的 第二个td
        $( "tr:eq(1) td:eq( 1 )" ).addClass( "my_background_style" );
      </script>
      
  • 注意:

    • 在 jQuery 1.8 之前, :eq(index) 选择器不接受负值(尽管该 .eq(index) 方法接受);
    • 由于是 jQuery 扩展,而不是 CSS 规范的一部分,因此 :eq() 使用 :eq() 查询无法利用本机 DOM querySelectorAll() 方法提供的性能提升。为了在现代浏览器中获得更好的性能,请改用 $(“your-pure-css-selector”).eq(index)

5.2.2 其他与索引相关的选择器

  • 如::eq() , :lt() :gt() :even , :odd

5.3 :nth-child(n)

  • 选择属于其父元素的第 n 个子元素的所有元素。从1开始
  • 例子,直接截官网的来吧,如下:
    在这里插入图片描述

5.4 :last 与 :last-child

  • 用法如下:
    <script>
      // 取出的是整个table的最后一个td (my_background_style是自己定义的样式)
      $("table tr td:last").addClass( "my_background_style" );
      
      // 取出的是每行的最后一个td
      $("table tr td:last-child").css( "background-color", "green" );
    </script>
    

6. 参考

  • 更多了解,请去官网:
    https://api.jquery.com/.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/231767.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RocketMQ-RocketMQ高性能核心原理(流程图)

1.NamesrvStartup 2.BrokerStartup 3. DefualtMQProducer 4.DefaultMQPushConsumer

Unity-Shader - 2DSprite描边效果

实现一个简单的2D精灵图描边效果&#xff0c;效果如下 实现思路&#xff1a; 可以通过判断该像素周围是否有透明度为 0的值&#xff0c;如果有&#xff0c;则说明该像素位于边缘。 所以我们需要打开alpha blend&#xff0c;即&#xff1a; Blend SrcAlpha OneMinusSrcAlpha&am…

Java 11 到 Java 21:无缝迁移的可视化指南

迁移到 Java 21 的理由 在我们探索从 Java 11 迁移到 Java 21 的必要性的旅程中&#xff0c;我们深入研究了四个关键类别&#xff0c;并强调了这一转变的重要性。每个方面都至关重要&#xff0c;共同为采用最新版本的 Java 编程语言打造了一个引人注目的案例。 1. 安全性&#…

【数据结构(九)】线索化二叉树(3)

文章目录 1. 前言——问题引出2. 线索二叉树的基本介绍3. 线索二叉树的应用案例3.1. 思路分析3.2. 代码实现 4. 遍历线索化二叉树4.1. 代码实现 1. 前言——问题引出 问题&#xff1a;     将数列 {1, 3, 6, 8, 10, 14 } 构建成一颗二叉树. &#xff08;n17个空指针域&…

【数据挖掘】国科大苏桂平老师数据库新技术课程作业 —— 第三次作业

part 1 设计一个学籍管理小系统。系统包含以下信息&#xff1a; 学号、学生姓名、性别、出生日、学生所在系名、学生所在系号、课程名、课程号、课程类型&#xff08;必修、选修、任选&#xff09;、学分、任课教师姓名、教师编号、教师职称、教师所属系名、系号、学生所选课…

前端:如何让background背景图片进行CSS自适应

在设置login背景时&#xff0c;找到了一张这样的图片&#xff1a; 但是设置成login背景时&#xff0c;如果没有做一些css适应设置&#xff0c;图片就变样了&#xff0c;变成了这样&#xff1a; 严重变形了&#xff0c;这就造成了一种理想与现实的差距。 若想解决这个自适应问题…

西工大网络空间安全学院计算机网络实验五——ACL配置

实验五、ACL配置 一. 实验目的 1. 掌握ACL的基本配置方法 二. 实验内容 1. 基于如下图所示的拓扑图&#xff0c;对路由器进行正确的RIP协议配置&#xff1b; ​ 首先引入3台2811 IOS15型号的路由器、3台2950-T24型号的交换机、4台PC-PT型号的PC机、两台Server-PT型号的服务…

Java:字节流 文件输出与读入方法 并 实现文件拷贝

文章目录 字节 流FileOutputStream换行 与 续写FileInputstream实现 文件拷贝&#xff08;字节数组 读入方法&#xff09;字节流 编码 字节 流 FileOutputStream 创建对象&#xff0c;指定位置&#xff08;产生数据传输通道&#xff09; 参数可以是File对象&#xff0c;也可以…

蓝桥杯日期问题

蓝桥杯其他真题点这里&#x1f448; 注意日期合法的判断 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader;public class Main{static int[] days {0,31,28,31,30,31,30,31,31,30,31,30,31};static BufferedReader in new Buf…

功能强大的屏幕录制和剪辑工具Camtasia Studio 2024 中文版

Camtasia Studio 2024 是一款功能强大的屏幕录像工具&#xff0c;集视频录制、剪辑、编辑和播放于一体的多功能屏幕录制软件&#xff0c;Camtasia Studio 2024操作简单&#xff0c;它能够轻松为您将屏幕上的所有声音、影音、鼠标移动的轨迹和麦克风声音全部录制下来&#xff0c…

[足式机器人]Part2 Dr. CAN学习笔记-数学基础Ch0-9阈值选取-机器视觉中应用正态分布和6-sigma

本文仅供学习使用 本文参考&#xff1a; B站&#xff1a;DR_CAN Dr. CAN学习笔记-数学基础Ch0-9阈值选取-机器视觉中应用正态分布和6-sigma 5M1E——造成产品质量波动的六因素 人 Man Manpower 机器 Machine 材料 Material 方法 Method 测量 Measurment 环境 Envrionment DMAI…

AlexNet

概念 过拟合:根本原因是特征维度过多&#xff0c;模型假设过于复杂&#xff0c;参数过多&#xff0c;训练数据过少&#xff0c;噪声过多&#xff0c;导致拟合的函数完美的预测训练集&#xff0c;但对新数据的测试集预测结果差。 过度的拟合了训练数据&#xff0c;而没有考虑到…

算法专题一:双指针

算法专题一&#xff1a;双指针 一&#xff1a;移动零1.GIF题目解析&#xff1a; 二&#xff1a;复写零2.GIF题目解析&#xff1a; 三&#xff1a;快乐数3.GIF题目解析&#xff1a; 四&#xff1a;装水最多容器&#xff1a;4.GIF题目解析&#xff1a; 五&#xff1a;有效三角形的…

0007Java程序设计-ssm基于微信小程序的在线考试系统

文章目录 **摘要**目 录系统实现开发环境 编程技术交流、源码分享、模板分享、网课分享 企鹅&#x1f427;裙&#xff1a;776871563 摘要 网络技术的快速发展给各行各业带来了很大的突破&#xff0c;也给各行各业提供了一种新的管理技术&#xff0c;基于微信小程序的在线考试…

Spring Boot中使用Swagger

1. 启用Swagger 1.1 启用注解扫描和文档接口 直接在POM文件引入依赖 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>2.9.2</version> </dependency>1.2 启动swagger-u…

系统设计-微服务架构

典型的微服务架构图 下图展示了一个典型的微服务架构。 负载均衡器&#xff1a;它将传入流量分配到多个后端服务。CDN&#xff08;内容交付网络&#xff09;&#xff1a;CDN 是一组地理上分布的服务器&#xff0c;用于保存静态内容以实现更快的交付。客户端首先在 CDN 中查找内…

ElementUI 时间选择器如何限定选择时间

DatePicker 日期选择器 | Element Plus 我们如何限定我们的选择时间呢&#xff0c;比如限定选择时间为今天之前&#xff0c;或者今天之后的时间&#xff1f; 我们可以使用官方提供的disabled-date来实现 我们通过这个属性 做一个回调函数&#xff0c;在里面比较我们想要限定的时…

《数据库系统概论》学习笔记——王珊 萨师煊

第一章 绪论 一、数据库系统概述 1.数据库的4个基本概念 &#xff08;1&#xff09;数据 描述事物的符号记录称为数据 &#xff08;2&#xff09;数据库 存放数据的仓库 &#xff08;3&#xff09;数据库管理系统 主要功能&#xff1a; &#xff08;1&#xff09;数据定…

【QED】井字棋

目录 题目背景题目描述输入格式输出格式测试样例 思路核心代码 题目背景 井字棋&#xff0c;英文名叫Tic-Tac-Toe&#xff0c;是一种在 3 3 3 \times 3 33格子上进行的连珠游戏&#xff0c;和五子棋类似。游戏时&#xff0c;由分别代表O和X的两名玩家轮流在棋盘格子里留下棋子…

【恋上数据结构】前缀树 Tire 学习笔记

Tire 需求分析 如何判断一堆不重复的字符串是否以某个前缀开头&#xff1f; 用 Set\Map 存储字符串&#xff08;不重复&#xff09;遍历所有字符串进行判断缺点&#xff1a;时间复杂度 O(n) 有没有更优的数据结构实现前缀搜索&#xff1f; Tire&#xff08;和 Tree 同音&a…